【Conda】anaconda介绍及使用,创建、删除环境,生成/使用yml文件依赖、requirements.txt等

本文介绍了Anaconda作为Python环境管理工具的作用,强调了不同Python版本和包版本对代码运行的影响。通过yml文件,可以方便地创建和共享一致的开发环境。文章还详述了如何创建、删除环境,以及如何根据requirements.txt和yml文件安装依赖。此外,还讲解了如何导出环境为yml或txt文件,确保代码的一致性和可复用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

简单介绍一下anaconda

anaconda简单来说就是个python环境管理的工具。有朋友可能会说,我需要啥包装啥包不就好了,为啥需要好多个python环境?

  1. 有些代码可能在某个python版本下work,但是在另一个python版本下就不work了。最直接的例子就是python2和python3,或者python3的不同小版本。每次升级几乎都会有些小改动,有可能就会导致不work,所以最好还是别人用什么环境你就用什么环境效率最高。
  2. 你有时候可能会需要用到同一个包的不同版本。比如tensorflow,虽然我没太用过,但是印象里tensorflow是一代版本一代神…曾经在github上扒过一个tf的代码,就因为版本不匹配报了很多奇奇怪怪的错误。当你需要某个包的不同版本,你就没办法在同一个环境里同时安装了。

简单介绍一下yml文件依赖

这个文件格式啥的,感兴趣的朋友可以自己查一下。这里主要介绍一下关于用yml文件配置conda环境的事情。
很多写的比较好的代码,都会把他们用的环境写的很详细。一种是用pip导出环境,导出成requirements.txt,另一种是用conda导出环境依赖,导出成xxxx.yml。这时候你可以根据这个requirements.txt/xxxxx.yml文件创建你的python环境。这样就可以一键run起来别人的代码了。

Anaconda基本操作及打包环境为 yml文件/txt文件

创建新的conda环境

conda create -n <your_env_name> python=<required_version>

根据yml文件来创建conda环境

conda env create -n <your_env_name> -f xxxx.yml

根据txt文件来创建conda环境

# 这里要注意一下,必须要先激活你要安装依赖的conda环境再使用pip
# 在同一个环境下,使用pip install和conda install效果是一样的
# 只不过包可能有的版本上可能这个有那个没有,或者名字上有细小的区别。但是对于大多数情况开说不影响。
conda create -n <your_env_name> python=<required_version> 
pip install -r requirements.txt

或者

conda install --yes --file requirements.txt

删除环境

conda remove -n <your_env_name> --all

使用指定的conda环境

conda activate <your_env_name>

查看某个conda环境里安装的包

conda activate <your_env>
conda list

卸载某个包

conda uninstall xxx

或者

pip uninstall xxx

导出conda环境为yml文件

conda env export >  xxx.yml

导出conda环境/python环境为txt文件

pip freeze > requirements.txt 

或者

conda list -e > requirements.txt

如果文章对您有帮助,麻烦动动小手点个赞!非常感谢!

(base) C:\Users\26374>conda create -n labelimg python=3.9 -y Channels: - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge - https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free - defaults Platform: win-64 Collecting package metadata (repodata.json): done Solving environment: done ## Package Plan ## environment location: D:\Anaconda\envs\labelimg added / updated specs: - python=3.9 The following packages will be downloaded: package | build ---------------------------|----------------- bzip2-1.0.8 | h2466b09_7 54 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/ce ca-certificates-2025.1.31 | h56e8100_0 155 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/ce libffi-3.4.6 | h537db12_0 40 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/ce liblzma-5.6.4 | h2466b09_0 102 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/ce libsqlite-3.49.1 | h67fdade_1 1.0 MB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/ce libzlib-1.3.1 | h2466b09_2 54 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/ce openssl-3.4.1 | ha4e3fda_0 8.1 MB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/ce pip-25.0.1 | pyh8b19718_0 1.2 MB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/ce python-3.9.21 |h37870fc_1_cpython 16.2 MB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/e setuptools-75.8.2 | pyhff2d567_0 760 KB https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/ce tk-8.6.13 | h5226925_1 3.3 MB https://mirrors.tuna.tsinghua.edu.cn/ana
03-16
### 如何使用Anaconda创建 `requirements.txt` 文件 为了管理项目依赖项,可以利用 Conda 和 Pip 的功能来创建 `requirements.txt` 文件Conda 支持通过命令行工具指定环境配置文件以及安装包列表。 当希望记录环境中已安装的 Python 包及其版本以便于复制相同的工作环境时,可以通过导出这些信息到文本文件中。对于基于 Conda 安装的软件包,推荐的做法是维护一个名为 `environment.yml` 或者 `.yml` 类型的 YAML 配置文件而不是传统的 `requirements.txt` 文件[^1]。 然而,如果确实需要生成适用于Pip使用的 `requirements.txt` 文件,则可按照如下方法操作: #### 方法一:混合使用 Conda 和 Pip 导出需求 由于某些情况下可能同时存在由 Conda 及 Pip 管理的不同库,在这种场景下建议先激活目标环境再执行以下指令组合以确保捕获完整的依赖关系: ```bash conda list -e > requirements.txt pip freeze >> requirements.txt ``` 上述命令会将当前活跃环境下所有的Python包连同其确切版本号一起写入至 `requirements.txt` 中;其中 `-e` 参数指示采用简单的格式化方式输出适合被Pip解析的内容形式。 #### 方法二:仅针对纯 Pip 托管的包 若是只涉及经由 Pip 装载的部分,则可以直接运用该工具本身来进行处理: ```bash pip freeze > requirements.txt ``` 此语句能够提取所有非Conda渠道获取并部署成功的第三方扩展模块,并将其描述成标准的形式存放在指定路径下的文本档内。 需要注意的是,尽管这种方法简单有效,但在跨平台迁移或共享开发设置方面可能会遇到兼容性挑战,因此强烈鼓励优先考虑构建专门用于定义虚拟运行空间结构的YAML文档作为首选方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小丫么小阿豪

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值