爱上 Conda:Python 程序员的必备工具

前言

之前对于python环境的管理,我通常的做法是在项目目录中使用python -m venv myvenv这种方式来创建属于当前项目工程的虚拟环境。但最近,公司基于项目需要让客户端试着跑一些端测大模型,但他们对于Python不是很了解,对于版本管理以及依赖库安装是一头雾水,生怕把本地环境给污染。果断给他们推荐Conda。这片文章也记录一下Conda是如何轻松管理环境的,果断抛弃了python -m venv myvenv这种方式。

Conda到底是啥

Conda是一个开源的包管理器和环境管理器,主要用于安装和管理Python和其他编程语言的软件包。它可以帮助我们在不同的项目中轻松地创建和管理独立的环境,以及安装、升级和卸载软件包。

安装Conda

根据你的操作系统,可以从官方网站(www.anaconda.com/products/di...)下载相应的安装包。在安装过程中,建议选择"Add Anaconda to my PATH environment variable",以便在命令行中直接使用Conda命令。

创建和管理环境

创建环境

使用以下命令创建一个名为"myenv"的新环境,并指定Python版本为3.8:

ini 复制代码
conda create --name myenv python=3.8

激活环境

激活名为"myenv"的环境,请运行:

复制代码
conda activate myenv

这时,你会发现命令行的开始部分会显示你现在正在使用的虚拟环境的名字。

退出环境

要退出当前激活的环境,请运行:

复制代码
conda deactivate

删除环境

要删除名为"myenv"的环境,请运行:

lua 复制代码
conda env remove --name myenv

列出所有的 conda 环境

你可以使用下列的命令来查看机器上所有的conda环境:

bash 复制代码
conda env list

安装、升级和卸载软件包

安装软件包

启动环境后,你可以使用 conda installpip install 安装新的软件包。

要在当前环境中安装名为"numpy"的软件包,请运行:

复制代码
conda install numpy

升级软件包

要升级当前环境中名为"numpy"的软件包,请运行:

sql 复制代码
conda update numpy

卸载软件包

要从当前环境中卸载名为"numpy"的软件包,请运行:

arduino 复制代码
conda remove numpy

搜索软件包

要搜索包含关键字"numpy"的软件包,请运行:

sql 复制代码
conda search numpy

列出已安装的软件包

要列出当前环境中已安装的所有软件包及其版本,请运行:

复制代码
conda list

显示包的信息

你可以查看安装的包的具体信息:

复制代码
conda info numpy

导出和导入环境

克隆环境

如果你想要复制一个环境,你可以克隆它。比如,克隆名为 "myenv" 的环境,并命名为 "myclone":

css 复制代码
conda create --name myclone --clone myenv

导出环境

你可以将你的环境和其依赖关系导出到一个 YAML 文件中,这样就可以轻松地在其他机器上复制这个环境。例如,导出名为 "myenv" 的环境:

bash 复制代码
conda env export --name myenv > environment.yaml

从文件中创建环境

相反地,你也可以使用一个 YAML 文件来创建一个环境:

lua 复制代码
conda env create --file environment.yaml

启动 Jupyter Notebook

安装了 Jupyter Notebook。如果没有,你可以通过输入 conda install jupyter 来进行安装

输入 jupyter notebook 并按回车。此命令将启动 Jupyter Notebook,并且你的默认 web 浏览器应该会自动打开一个新的窗口或标签页,显示 Jupyter Notebook 的主页面。

最后

借助这样一个机会记录一下如何使用Conda进行环境的创建、管理以及软件包的安装、升级和卸载等操作。通过掌握这些基本操作,我们可以更好地利用Conda来管理Python项目和依赖。

相关推荐
小杍随笔几秒前
【Rust可见性控制:pub、pub(crate)、pub(super)实战】
开发语言·后端·rust
Cyber4K几秒前
【妙招系列】在Linux中测试自己邮箱是否可接收邮件?
linux·运维·python
Ama_tor8 分钟前
FLASK|完整版学习(ALL)
python·学习·flask
郝学胜-神的一滴19 分钟前
深度学习:CNN 与 RNN——解锁多模态处理能力
人工智能·python·rnn·深度学习·神经网络·cnn
今天你TLE了吗23 分钟前
JVM学习笔记:第九章——StringTable字符串常量池
java·jvm·笔记·后端·学习
七月初七7727 分钟前
使用Python连接MySQL数据库
数据库·python·mysql
测试199830 分钟前
自动化测试:selenium详解
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
进击的小头33 分钟前
第5篇:最优控制问题的组成
python·算法
hhzz34 分钟前
JupyterLab、Jupyter Notebook 和 Voilà 的安装与使用指南
ide·python·jupyter
这辈子谁会真的心疼你34 分钟前
修改视频拍摄时间会被发现吗?修改视频拍摄时间的方法
python·音视频