本文已参与「新人创造礼」活动,一同开启创造之路。
1 Conda
1.1 conda 常用指令
# 创立虚拟环境 eg. conda create -n env_name pandas
conda create -n [env_name] [package_name list]
# 指定 python 版别
conda create -n [env_name] python=3.8
# 激活环境
conda activate [env_name]
# 退出环境
conda deactivate
# 删去虚拟环境
conda env remove -n [env_name]
# 显示一切虚拟环境
conda env list
conda info -e
# 重置环境
conda list --revisions # 检查前史,按需挑选 `REV_NUM` 数值。一般为1或之后
conda install --revision REV_NUM # 稍等片刻,即可重置
# 装置包
conda install [package_name]
# 装置多个包
conda install numpy pandas scipy
# 装置固定版别的包
conda install numpy=1.10
# 移除一个包
conda remove [package_name]
# 检查一切包
conda list
# 晋级全部库
conda upgrade --all
# 晋级一个包
conda update [package_name]
# 检查装备信息
conda config --show
1.2 Linux 下装置 Anaconda
-
输入
uname -a
检查 Linux 体系是 32位 or 64位 -
在 mirrors.tuna.tsinghua.edu.cn/anaconda/ar… 找到需要的版别下载装置
-
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh bash Anaconda3-5.3.1-Linux-x86_64.sh
-
一路回车 + ‘Yes’ 就行,最后会问你是否装置
VS Code
,不需要 ‘no’ 就行 -
这儿需要修正
/etc/profile
vi /etc/profile
然后输入
i
进入编辑模式。按向下方向键拉倒最后,输入
export PATH=$PATH:/root/anaconda3/bin
接着按下
esc
退出键,输入:wq
,按下回车,即可保存 -
# 改写环境变量 source /etc/profile
-
重启终端,测验输入
python3
:
1.3 国内镜像源
清华
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
中科院
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
装备镜像源
conda config --set show_channel_urls yes
# 删去
conda config --remove-key $channels
# 检查当前镜像列表
conda config --show-sources
# 删去镜像源
conda config --remove channels {channel}
1.4 Anaconda 装备虚拟环境
导出/导入 Anconda python 的环境到 requirements.txt
# 导出
conda list -e > requirements.txt
# 导入
conda install --yes --file requirements.txt # 一遇到装置不上就全体中止不会持续下面的包装置
FOR /F "delims=~" %f in (requirements.txt) DO conda install --yes "%f" # 能处理上面出现的不履行后续包的问题
导出 Anconda python 的环境到 environment.yml
# 进入方针环境
activate env_1
# 导出 environment.yml 文件
conda env export | grep -v "^prefix: " > environment.yml
上面指令导出时经过 grep
删去了 “prefix:“ ,但是实际如同经过文件创立的 Anaconda python 环境,prefix 选项如同是不起作用的。
导入 environment.yml
创立 Anaconda python 环境
conda env create -f environment.yml
上面指令会装置在 conda 默认的环境途径。如果要指定其它装置途径,运用 -p 选项
conda env create -f environment.yml -p /home/user/anaconda3/envs/env_name
Anaconda 桌面运用导入环境装备文件
-
这儿直接打开 Anaconda,
-
点击数字1处 “Import” 按钮弹窗
-
点数字2出找到方才的 yml 文件,这时可以修正自己想要的 Name
-
点击数字3处 “Import” 即可
-
等待主动装置环境
离线装置环境包
conda install --offline ../anaconda_offline_package/pytorch-cpu-1.1.0-py3.7_cpu_0.tar.bz2
1.5 FAQ
1) Bug: 运用指令行时先激活
conda 未激活时(如出现错误 HTTP 000)
在指令行输入:
conda activate
2) Error: No module named ‘conda’
报错信息:
from conda.cli import main ModuleNotFoundError:
No module named 'conda'
要求:以前的装置包要有,然后 update 一下
指令:bash Anaconda3-5.2.0-Linux-x86_64.sh -u
一切环境都在,一切康复正常
参阅文章:www.geek-share.com/detail/2727…
3) Error: -bash: /root/anaconda3/bin/activate: Permission denied
source activate env_1
4) 重命名环境
conda 其实没有重命名指令,完成重命名是经过 clone 完成的,分两步: 1、先 clone 一份 new_name 的环境 2、删去 old_name 的环境
如,将 nlp
重命名成 tf2
conda create -n tf2 --clone nlp
删去原环境
conda remove -n nlp --all
2 Python pip
2.1 虚拟环境管理
装置虚拟环境
$ pip3 install virtualenv
创立虚拟环境
# (在当前途径提示符下履行:virtualenv 虚拟环境名)
$ virtualenv lbh
created virtual environment CPython3.5.2.final.0-64 in 88ms
creator CPython3Posix(dest=/home/liubihao/lbh, clear=False, global=False)
seeder FromAppData(download=False, pip=latest, setuptools=latest, wheel=latest, via=copy, app_data_dir=/home/liubihao/.local/share/virtualenv/seed-app-data/v1.0.1)
activators FishActivator,BashActivator,CShellActivator,PythonActivator,XonshActivator,PowerShellActivator
liubh@ubuntu:~$ source lbh/bin/activate
$ virtualenv --no-site-packages [虚拟环境名] #(中心的--no-site-packages 为参数,表示不包括体系大局的Python装置包,这样会更令环境更干净)
$ virtualenv --no-site-packages --python=python3.6 [虚拟环境名] #(--python=3.6 为指定版别号)
激活虚拟环境 (运转 Scripts 文件夹下的 activate.bat 激活虚拟环境)
$ source lbh/bin/activate
(lbh) $
# 提示符前面的 (lbh) 便是虚拟环境标识
退出虚拟环境 (运转 Scripts 文件夹下的 deactivate.bat 退出虚拟环境)
$ deactivate
删去虚拟环境
# windows 简略粗暴, 直接删去创立时生成的 myenv 的目录就好了
# linux
rm -r lbh
2.2 pip 导出/导入 requirements.txt
导出
$ pip freeze > requirements.txt
导入
$ pip install -r requirements.txt
2.3 Linux 运用 virtualenv 更换镜像源
先新建虚拟环境再换源,不然会报错
# lbh 是虚拟环境(文件夹)的称号
$ virtualenv -p /usr/bin/python3.6 lbh
换清华源
$ pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
每次进入自己用户主动进入环境
# 在 /home/liubh/ 中的 ./bashrc 文件最后添加一行
$ source ~/lbh/bin/activate