Conda基本操作

目录

1  创建环境

2  查看环境

3  删除环境

4  激活环境

5  换源

5.1 Windows换源

5.2 Linux换源

6 克隆环境

7  重命名环境

8  复制环境列表到文本文档

9  anaconda prompt光标消失

10  修改anaconda prompt起始位置

11  环境移植

11.1  windows移植

11.1.2  安装 conda-pack

11.1.2  打包需要移植的环境

11.1.3  放置环境

11.2  linux移植

11.2.1  安装 conda-pack

11.2.2  打包需要移植的环境

11.2.3  放置环境


1  创建环境

conda create -n [环境名称] python=[python版本]

例如

conda create -n tensorflow python=3.6

有时会出现这种错误,我当前是在aarch平台上创建python3.6的环境

这个时候我们输入 conda config --add channels conda-forge ,之后再进行安装就可以了

  • 不只创建的时候会出现这种错误,有时安装别的东西出现这种错误使用 conda config --add channels conda-forge 同样好用

2  查看环境

conda info -e

当前使用的环境会在前方标注一个星号

3  删除环境

conda remove -n [环境名称] --all

例如

conda remove -n labelimg --all

4  激活环境

conda activate [环境名称]

例如

conda activate tensorflow

5  换源

5.1 Windows换源

我们在C盘的用户下创建一个文件夹,命名为pip

我的当前我的路径是 C:\Users\MSI

在pip文件夹中创建一个文本文档,先使用默认名称就行最后修改名称,在文档中输入下列内容

[global]

timeout = 6000

index-url = Simple Index

trusted-host = pypi.douban.com

我现在使用的是豆瓣源,也可以换成清华源,阿里源等

将文本文档重命名为pip.ini

5.2 Linux换源

在home下创建文件夹.pip,在其中新建文本文件,命名为pip.conf。在其中输入如下内容

6 克隆环境

有时候我们要创建一个新的环境时没有网络,这个时候我们可以使用克隆环境

比如

  • conda create -n test --clone base

这样就可以在无网络的状态下创建一个新的环境

7  重命名环境

conda中没有直接重命名环境的命令,但是我们可以通过一下两步模拟重命名的操作

  • 克隆当前环境,同时给新环境一个想要的名字
  • 删除旧环境

比如我现在想把名为paddle的环境重命名为paddle1

输入 conda create -n [重命名后的名称] --clone [重命名前的名称]

比如

  • conda create -n paddle1 --clone paddle

之后删除旧的环境

这个时候就重命名完毕了

8  复制环境列表到文本文档

当我们需要给客户交付代码时通常要同时交付环境,此时我们需要冻结pip list

激活环境后,我们输入

  • pip freeze > requirements.txt

运行之后,它会在我们运行的目录下生成requirements.txt

我上面的例子目录为 C:\Users\MSI

交给对方后,对方创建完一个新的环境后,输入(此时requirements.txt需在对方操作路径下)

  • pip install -r requirement.txt

这样即可获得与我们相同的环境

我们有时在部署项目的时候如果使用requirement.txt会有很多库装不上,装不上pip install -r requirement.txt就会中断,这样就很烦,所以我们可以自己写一个脚本

import os

fail_install_txt = open('fail_install.txt','w')
with open('requirements.txt','r') as f:
    require_list = f.read().splitlines()

for i in require_list:
    result = os.system('pip3 install ' + i)
    if result != 0:
        print(i,file=fail_install_txt,flush=True)
  • os.system()如果没安装成功就会返回非0的值

将requirements.txt放在与这个脚本同名的目录下,然后运行,这样遇到错误就不会中断的

有的时候其实是安装库前后的问题,出错的东西该装还是要装的,出了错库会放到 failed_install.txt 中,到时候你再解决他们

9  anaconda prompt光标消失

在anaconda prompt中有时会出现光标消失的情况

这个我们如果编辑很多的内容的时候,我们找不到光标就很麻烦,这个时候重新开启anaconda窗口可以解决问题,但是大多数情况我们是不想重新开启窗口的

这个时候你切到中文的输入法,然后输入几个拼音

这个时候你不要按1,直接按shift

这个时候就会发现消失的光标重新出现了

10  修改anaconda prompt起始位置

参考 Anaconda Prompt切换路径/工作目录_anaconda prompt切换目录_小白白程序员的博客-CSDN博客

找到Anaconda prompt的快捷方式

修改前是这样的

修改后是这样的

11  环境移植

环境移植的前提条件有两个

  1. 两个机器必须使用相同类型的系统,比如linux只能移植给linux。windwos只能移植给windows
  2. 两个机器必须都有anaconda(anaconda的版本可以不同。可支持的最高python版本可以不同。anaconda的安装路径可以不同)

11.1  windows移植

我把windows11的环境移植给windows10

11.1.2  安装 conda-pack

pip install conda-pack

11.1.2  打包需要移植的环境

比如我要打包labelimg这个环境

那么就执行 conda pack -n labelimg

  • labelimg是环境名称

打包完成后会在当前路径下生成与环境名同名的gz文件

gz文件比envs中的环境文件夹体积要小

11.1.3  放置环境

我们先看一下被移植的conda环境。需要保证被移植的anaconda中没有将要移植环境的同名环境,也就是新的机器里不能有叫labelimg的环境

创建一个移植环境同名的文件夹,然后把这个gz文件解压到里面

然后把 labelimg 这个文件夹复制到 anaconda安装路径下的envs 中,我当前是F:\ananconda\envs\

这时就有labelimg这个环境了

可以正常激活并使用它

但是如果对于一些特殊的东西,还需要再进行一步,比如我想打开labelimg环境中的labelimg软件。在labelimg环境的内部会有一些问题

这个时候我们只能再把环境复制一次,复制到它之前待的地方。比如我安装conda-pack的机器,labelimg在 E:\Anaconda\envs 中,那么我们就需要复制labelimg到 E:\Anaconda\envs

实际就是新建几个文件夹的事情

复制之后就能正常使用了

11.2  linux移植

我把ubuntu 22.04.3的环境移植给 ubuntu 20.04.6

11.2.1  安装 conda-pack

11.2.2  打包需要移植的环境

我打包 paddle_2_1_2 这个环境

11.2.3  放置环境

创建一个名为 paddle_2_1_2 的文件夹,把paddle_2_1_2.tar.gz解压到里面

把paddle_2_1_2这个文件夹复制anaconda的envs下

之后就可以激活并使用了,即使是环境中的软件jupyter lab也是可以使用的

  • 例子中的移植环境与被移植环境的用户名不同

经测试可以对环境进行安装和卸载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Suyuoa

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

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

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

打赏作者

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

抵扣说明:

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

余额充值