Conda安装和使用(ubuntu)
以下是关于如何使用 Conda 的详细指南。这将涵盖从安装到基本操作的各个方面,帮助您高效地管理Python环境和依赖项。
Conda 简介
Conda 是一个跨平台的开源包管理器和环境管理器,最初由 Anaconda 开发,广泛用于数据科学、机器学习和科学计算等领域。它不仅支持 Python,还支持其他编程语言如 R。
安装 Conda
1. 选择安装包
- Anaconda:包含了大量的预装包,适合需要丰富数据科学工具的用户。
- Miniconda:一个轻量级的版本,仅包含 Conda 和其依赖,适合希望自定义环境的用户。
2. 下载与安装
清华大学开源软件镜像站下载地址: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/
Windows:
- 访问 Anaconda 下载页面 或 Miniconda 下载页面。
- 下载适用于 Windows 的安装程序。
- 双击安装程序,按照提示完成安装。建议将 Conda 添加到系统 PATH 中(安装程序会有相关选项)。
macOS 和 Linux:
-
打开终端。
-
使用
wget或curl下载安装脚本。例如,下载 Miniconda:wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -
运行安装脚本:
bash Miniconda3-latest-Linux-x86_64.sh -
按提示完成安装。安装完成后,重新加载终端或运行
source ~/.bashrc(或source ~/.zshrc,取决于使用的 shell)。
基本使用
1. 更新 Conda
安装完成后,建议先更新 Conda 到最新版本:
conda update conda
2. 创建环境
创建一个新的 Conda 环境,并指定 Python 版本。例如,创建一个名为 myenv 的环境,使用 Python 3.8:
conda create -n myenv python=3.8
3. 列出环境
查看已创建的所有 Conda 环境:
conda env list
或
conda info --envs
4. 激活与停用环境
激活环境 myenv:
conda activate myenv
停用当前激活的环境,返回到 base 环境:
conda deactivate
5. 安装包
在激活的环境中安装所需的包。例如,安装 numpy:
conda install numpy
安装多个包:
conda install numpy pandas matplotlib
6. 搜索包
查找可用的包:
conda search package_name
例如,搜索 scipy:
conda search scipy
7. 更新包
更新环境中的某个包到最新版本:
conda update package_name
例如,更新 numpy:
conda update numpy
8. 移除包
从环境中移除某个包:
conda remove package_name
例如,移除 matplotlib:
conda remove matplotlib
9. 删除环境
删除一个不再需要的环境:
conda remove -n myenv --all
10. 导出与导入环境
将环境配置导出为 yml 文件,以便在其他机器上重现:
conda env export > environment.yml
使用 yml 文件创建新环境:
conda env create -f environment.yml
高级功能
1. 使用不同的渠道 (Channels)
Conda 默认使用官方的 defaults 渠道。可以添加其他渠道如 conda-forge,这是一个社区驱动的、高质量的 Conda 包集合。
添加 conda-forge 渠道:
conda config --add channels conda-forge
conda config --set channel_priority strict
安装包时优先使用 conda-forge:
conda install package_name
2. 管理 Conda 配置
查看当前的 Conda 配置:
conda config --show
3. 克隆环境
快速复制一个现有的环境:
conda create --name newenv --clone oldenv
常用命令汇总
| 命令 | 功能 |
|---|---|
conda create -n env_name python=3.x | 创建新环境并指定 Python 版本 |
conda activate env_name | 激活指定环境 |
conda deactivate | 停用当前激活的环境 |
conda install package_name | 安装指定包 |
conda remove package_name | 移除指定包 |
conda update package_name | 更新指定包 |
conda list | 列出当前环境中的所有包 |
conda env list 或 conda info --envs | 列出所有环境 |
conda remove -n env_name --all | 删除指定环境 |
conda env export > environment.yml | 导出环境配置 |
conda env create -f environment.yml | 通过 yml 文件创建环境 |
conda search package_name | 搜索包 |
conda clean --all | 清理缓存 |
使用示例
1. 创建和激活环境
假设你需要一个专用于机器学习的环境,Python 3.9,安装 scikit-learn 和 tensorflow:
conda create -n ml_env python=3.9 scikit-learn tensorflow jupyter
conda activate ml_env
2. 更新环境中的包
conda update scikit-learn
3. 安装额外的包
例如,安装 jupyter:
conda install jupyter
4. 导出环境
conda env export > ml_env.yml
5. 通过 yml 文件重现环境
在另一台机器上:
conda env create -f ml_env.yml
常见问题
与系统package冲突
如发现 pip list 中缺少某些包。
首先检查 pip 路径
pip --version
# 应输出类似于 pip x.x.x from /路径/到/conda/envs/data_env/lib/python3.x/site-packages/pip (python 3.x)
实际输出:
~$ pip --version
pip 22.0.2 from /usr/lib/python3/dist-packages/pip (python 3.10)
结论: 不应该在系统环境安装pip,并且使用conda安装pip
conda install pip
小贴士
- 使用
base环境:避免在base环境中进行日常开发,建议新建独立环境以防止依赖冲突。 - 管理依赖冲突:尽量在创建环境时一次性安装所有需要的包,可以减少依赖冲突的可能性。
- 定期清理:使用
conda clean --all定期清理缓存,释放磁盘空间。 - 与系统package冲突: 如
总结
Conda 是一个强大的工具,能够帮助开发者轻松管理不同的项目环境和依赖。通过合理使用 Conda,您可以避免环境冲突,提高开发效率。希望本指南能帮助您顺利上手并充分利用 Conda 的各种功能。
相关文章:
Conda安装和使用(ubuntu)
以下是关于如何使用 Conda 的详细指南。这将涵盖从安装到基本操作的各个方面,帮助您高效地管理Python环境和依赖项。 Conda 简介 Conda 是一个跨平台的开源包管理器和环境管理器,最初由 Anaconda 开发,广泛用于数据科学、机器学习和科学计算…...
JavaEE:文件操作
文章目录 文件操作和IO文件系统操作File介绍属性构造方法方法 代码演示前四个listmkdirrenameTo 文件操作和IO 文件系统操作 创建文件,删除文件,创建目录,重命名… Java中有一个类,可以帮我们完成上述操作. 这个类叫做File类. File介绍 属性 这个表格描述了文件路径的分隔符…...
Python | 练习作业 2
为学生登录系统新增搜索功能。 第二天作业的解题思路: # 1.创建一个空列表保存搜索结果 # 2.让用户输入要搜索的内容 # 3.遍历学生信息,检查学生的id name age gender score # 中的属性值 是否跟用户搜索的内容一致 # 4.如果有一致的属性 那么就将该学生…...
C语言-整数和浮点数在内存中的存储-详解-上
C语言-整数和浮点数在内存中的存储-详解-上 1.前言2.整数2.1无符号整数2.2原码、反码、补码符号位最大值转换过程补码的意义简化算术运算易于转换方便溢出处理 1.前言 在C语言的使用中,需要时刻关注数据的类型,不同类型交替使用可能会发生错误ÿ…...
图论篇--代码随想录算法训练营第六十一天打卡| Floyd 算法,A*算法
Floyd 算法(求多源汇最短路) 题目链接:97. 小明逛公园 题目描述: 小明喜欢去公园散步,公园内布置了许多的景点,相互之间通过小路连接,小明希望在观看景点的同时,能够节省体力&…...
CMake构建学习笔记16-使用VS进行CMake项目的开发
文章目录 1. 概论2. 详论2.1 创建工程2.2 加载工程2.3 配置文件2.4 工程配置2.5 调试执行 3. 项目案例4. 总结 1. 概论 在之前的系列博文中,我们学习了如何构建第三方的依赖库,也学习了如何去组建自己的CMake项目,尤其是学习了CMake的核心配…...
数据结构中线性表的定义和特点
线性表:有n个数据特征相同的元素构成的有限序列。 特点: 除了第一个元素,最后一个元素,其余的元素都有唯一的前驱和唯一的后继。 案例引入: 一元多项式的运算: 可以将一元多项式p(x)抽象为一个有n1个系…...
【PyTorch单点知识】PyTorch中的自动混合精度(AMP)模块详解
文章目录 0. 前言1. 什么是自动混合精度?2. PyTorch AMP 模块3. 如何使用 PyTorch AMP3.1 环境准备3.2 代码实例3.3 代码解析 4. 结论 0. 前言 按照国际惯例,首先声明:本文只是我自己学习的理解,虽然参考了他人的宝贵见解及成果&a…...
数据结构 --- 哈希表
哈希表(Hash Table),也叫散列表,是一种根据关键码值(Key value)而直接进行访问的数据结构。 一、基本原理 哈希函数 哈希表通过一个特定的哈希函数,将关键码映射到表中的一个位置。这个位置通常…...
Linux相关:在阿里云下载centos系统镜像
文章目录 1、镜像站2、下载方式一2.1、第一步打开镜像站地址2.2 下载地址: https://mirrors.aliyun.com/centos/2.3、选择7版本2.4、镜像文件在isos文件夹中2.5、选择合适的版本 3、下载镜像快捷方式 1、镜像站 阿里云镜像站地址 2、下载方式一 2.1、第一步打开镜像站地址 2…...
24. 线模型对象
线模型Line渲染顶点数据 下面代码是把几何体作为线模型Line (opens new window)的参数,你会发现渲染效果是从第一个点开始到最后一个点,依次连成线。 // 线材质对象 const material new THREE.LineBasicMaterial({color: 0xff0000 //线条颜色 }); //…...
EasyExcel 快速入门
目录 一、 EasyExcel简介 官网链接: 代码链接: 二、 EasyExcel快速上手 引入依赖: 设置Excel相关注解 编写对应的监听类: 简单写入数据: 简单读取数据: 不需要使用监听器: 需要使…...
Sparse4D v1
Sparse4D: Multi-view 3D Object Detection with Sparse Spatial-Temporal Fusion Abstract 基于鸟瞰图 (BEV) 的方法最近在多视图 3D 检测任务方面取得了重大进展。与基于 BEV 的方法相比,基于稀疏的方法在性能上落后,但仍然有很多不可忽略的优点。为了…...
速盾:你知道高防 IP 和高防 CDN 的区别吗?
在当今网络安全形势日益严峻的情况下,网站的安全防护成为了企业和个人关注的焦点。高防 IP 和高防 CDN 作为两种常见的网络安全防护手段,被广泛应用于网站的安全防护中。那么,高防 IP 和高防 CDN 有什么区别呢?防护网站哪个更好呢…...
HTML和CSS网页制作成品
HTML和CSS网页制作成品 一、引言 1. 背景介绍 在当今数字化时代,网页已成为信息传递和交流的重要媒介。HTML和CSS作为网页制作的基石,对于构建美观、功能丰富的网站至关重要。本文将详细介绍如何使用HTML和CSS来制作一个网页成品。 2. 目的和重要性 …...
Ai+若依(集成easyexcel实现excel表格增强)
EasyExcel 介绍 官方地址:EasyExcel官方文档 - 基于Java的Excel处理工具 | Easy Excel 官网 Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存,poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题,但POI还是有一…...
钻机、塔吊等大型工程设备,如何远程维护、实时采集运行数据?
在建筑和工程领域,重型设备的应用不可或缺,无论是在道路与桥梁建设、高层建筑施工,还是在风电、石油等能源项目的开发中,都会用到塔吊、钻机等大型机械工程设备。 随着数字化升级、工业4.0成为行业发展趋势,为了进一步…...
【AutoX.js】选择器 UiSelector - 查找包名
文章目录 原文:https://blog.c12th.cn/archives/38.html选择器 UiSelector - 查找包名笔记直接查找包名双层判断(推荐)查找最外层控件的子控件 最后 原文:https://blog.c12th.cn/archives/38.html 选择器 UiSelector - 查找包名 笔记 AutoX.js UiSelec…...
ERP进销存多仓库管理系统源码 带完整的安装代码包以及搭建部署教程
系统概述 ERP进销存多仓库管理系统是一款专为中小企业量身定制的集成化管理软件,它集成了采购管理、销售管理、库存管理、财务管理以及多仓库协同作业等核心模块。通过统一的平台,企业可以实时掌握商品从入库到出库的全过程,实现库存的自动化…...
数据清洗-缺失值填充-对XGBoost参数优化填充
目录 一、安装所需的python包二、采用XGboost算法进行缺失值填充2.1可直接运行代码2.2以某个缺失值数据进行实战2.2.1 代码运行过程截屏:2.2.2 填充后的数据截屏:三、网格搜索(Grid Search)对 XGBoost 模型的超参数进行优化原理介绍3.1 说明3.2 参数优化的原理1. 网格搜索(…...
KubeSphere 容器平台高可用:环境搭建与可视化操作指南
Linux_k8s篇 欢迎来到Linux的世界,看笔记好好学多敲多打,每个人都是大神! 题目:KubeSphere 容器平台高可用:环境搭建与可视化操作指南 版本号: 1.0,0 作者: 老王要学习 日期: 2025.06.05 适用环境: Ubuntu22 文档说…...
网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...
智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...
Prompt Tuning、P-Tuning、Prefix Tuning的区别
一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...
vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...
基于服务器使用 apt 安装、配置 Nginx
🧾 一、查看可安装的 Nginx 版本 首先,你可以运行以下命令查看可用版本: apt-cache madison nginx-core输出示例: nginx-core | 1.18.0-6ubuntu14.6 | http://archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages ng…...
蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
MVC 数据库
MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
