爱上 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项目和依赖。

相关推荐
2601_962099081 小时前
replit如何运行python
python·代码编辑器·编程环境·在线ide·replit
头发够用的程序员1 小时前
别被 TOPS 参数迷惑:手把手推导边缘 GPU 整型算力
人工智能·python·ubuntu·计算机视觉·硬件架构·边缘计算
阿拉斯攀登1 小时前
MQ消息积压问题排查:消费卡顿、堆积、消费速度优化
后端
阿拉斯攀登1 小时前
无人售货机库存异步更新方案:解决高并发下单库存卡顿问题
后端
阿拉斯攀登1 小时前
无人售货机MQ消息丢失、重复消费、超时异常全套兜底方案
后端
TechWayfarer1 小时前
做IP归属地查询时总是查不准?IP纯净度检测实战:从“查归属地“到识别“脏IP“的四个维度
服务器·网络·python·tcp/ip·安全·web安全
做系统的大强1 小时前
我用中文从零写了一个操作系统(下篇):从45个BUG到165个——假持久化、USB地狱与OS自举
后端
程序员老赵1 小时前
Docker 部署 Rocky Linux:轻松搭建 RHEL 兼容企业级基础镜像平台
linux·后端·docker
用户6152612132101 小时前
Java主流框架与源码:Spring Framework
后端
小溪学编程2 小时前
Java InputStream 详解:从基础到实战
java·python·php