创建虚拟环境
conda create --name <env_name> <package_names>或conda create -n <env_name> <package_names>
- env_name为要创建的环境名,建议以英文命名,且不加空格,名称两边不加尖括号“<>”。
- package_names为要在环境中安装的包名,名称两边不加尖括号“<>”,可以在一个命令中传多个包名(用空格隔开);可以在包名后面加“=version”指定要安装的包的版本,例如“python=3.5 numpy=1.0 pandas”;
- 默认情况下,新创建的环境将会被保存在
/Users/[name]/.conda/envs
目录下,其中[name]为操作系统用户名,可以在命令行提示中看到,例如 “C:\Users\74143.conda\envs\tensorflow” 。
示例:
# 创建名为ai的虚拟环境,使用默认的
conda create -n ai
# 指定python的版本,并同时安装numpy pandas两个包
conda create -n test python=3.5 numpy pandas
切换虚拟环境
Linux 或 macOS
source activate <env_name>
Windows
activate <env_name>
退出虚拟环境
Linux 或 macOS
source deactivate
Windows
deactivate
显示虚拟环境清单信息
conda info --envs
或
conda info -e
或
conda env list
复制虚拟环境
conda create --name <new_env_name> --clone <copied_env_name>
- copied_env_name为被复制/克隆环境名。环境名两边不加尖括号“<>”。
- new_env_name即为复制之后新环境的名称。环境名两边不加尖括号“<>”。
删除虚拟环境
conda remove --name <env_name> --all
包管理
查找安装包
精确查找
conda search --full-name <package_full_name>
--full-name
为精确查找的参数。package_full_name
是被查找包的全名。包名两边不加尖括号“<>”。
# 查找全名为“python”的包有哪些版本可供安装
conda search --full-name python
模糊查找
conda search <text>
text
是查找含有此字段的包名。此字段两边不加尖括号“<>”。
# 查找含有“py”字段的包,有哪些版本可供安装
conda search py
查看当前环境已安装包清单
conda list
命令行方式安装包
在指定环境安装包
conda install --name <env_name> <package_name>
env_name
是将包安装的指定环境名。环境名两边不加尖括号“<>”。package_name
是要安装的包名。包名两边不加尖括号“<>”。
# 在名为“ai”的环境中安装pandas包
conda install --name ai pandas
在当前环境安装包
conda install <package_name>
使用pip安装包
当使用conda install
无法进行安装时,可以使用pip进行安装。
pip install <package_name>
-
为指定安装包的名称。包名两边不加尖括号“<>”。
注意:
- pip只是包管理器,无法对环境进行管理。因此如果想在指定环境中使用pip进行安装包,则需要先切换到指定环境中,再使用pip命令安装包。
- pip无法更新python,因为pip并不将python视为包。
- pip可以安装一些conda无法安装的包;conda也可以安装一些pip无法安装的包。因此当使用一种命令无法安装包时,可以尝试用另一种命令。
卸载包
卸载指定环境中的包
conda remove --name <env_name> <package_name>
卸载当前环境中的包
conda remove <package_name>
更新包
更新所有包
conda update --all
或
conda upgrade --all
- 建议:在安装Anaconda之后执行上述命令更新Anaconda中的所有包至最新版本,便于使用。
更新指定包
conda update <package_name>
或
conda upgrade <package_name>
- 更新多个指定包,则包名以空格隔开,向后排列。如:
conda update pandas numpy matplotlib
即更新pandas、numpy、matplotlib
常见问题和处理方式
VS Code接入Anaconda虚拟环境的设置
VS Code默认安装完成后接入的是机器本身的Python环境,但如果我们开发使用的是Conda所配置的虚拟环境,在VS Code检测的安装包就会不一致,实现不了代码的自动提示。因此需要修改VS Code的配置。
1、通过菜单打开配置页 “file => preferences => setting”;
2、搜索配置项 “python.pythonPath”;
3、把配置项的值从默认的 “python” 修改为虚拟环境的路径,例如 “C:\Users\74143.conda\envs\tensorflow”。
每次使用 VSCode 打开 Python 文件,终端就会自动激活 Conda 环境,但这并不是我想要的,我只想关闭它,只需要在 VSCode 的settings.json中加入这一行配置即可:
"python.terminal.activateEnvironment": false
还有另一个方法直接设置Conda取消自动激活base
,打开 Powershell:
conda config --set auto_activate_base false
新建虚拟环境仍使用base环境的python/pip
这是由于创建虚拟环境时没有指定python的版本,不指定python版本的的情况,env文件夹下就没有bin文件夹,因此无法正常激活、使用,所以实际使用的还是base环境。
解决方法:
创建虚拟环境时指定python版本,例如:
conda create -n tf2 python=3.7.3
文章评论