Python 虚拟环境使用
一、virtualenv
1. 使用 pip
pip install virtualenv
2. 创建运行环境
virtualenv [虚拟环境名称]
virtualenv env_name
# 如果不使用系统的包,加上 --no-site-packages 参数
virtualenv --no-site-packages 创建路径名称
3. 激活环境
# Linux
cd path/env_name
source ./bin/activate
# Windows
cd path/env_name
.\Scripts\activate.bat
4. 退出环境
# Linux
deactivate
# Windows
.\Scripts\deactivate.bat
5. 删除环境
将 env_name 文件夹来删除环境
6. 使用环境
进入环境后,正常使用 pip install
进行安装包操作
二、 virtualenvwrapper
1. 安装
# Linux/macOS
pip install virtualenv --user virtualenvwrapper
# Windows
pip install virtualenv virtualenvwrapper
2. 创建虚拟环境
# Linux/macOS
mkvirtualenv --python=py_path/python_version env_name
# Windows
mkvirtualenv --python=py_path/python_version env_name
3. 激活环境
workon # 列出环境列表
workon [env_name] # 切换环境
4. 退出环境
deactivate
5. 删除环境
rmvirtualenv env_name
6. 其它指令
pip freeze # 查看当前安装库版本
pip freeze > requirements.txt # 创建配置文件,用于环境备份
pip install -r requirements.txt # 安装文件所有包
lsvirtualenv # 列举所有环境
cdvirtualenv # 导航当前激活的虚拟环境的目录中
lssitepackages # 显示 site-packages 目录中的内容
cdsitepackages # 导航当前环境的 site-packages 目录
* Ubuntu 安装 virtualenv 和 virtualenvwrapper
安装
# install pip3
sudo apt install python3-pip
# install virtualenv
pip3 install virtualenv
# install virtualenvwrapper
pip3 install virtualenvwrapper
配置
# 创建虚拟环境根目录
mkdir $HOME/.virtualenvs
# 查找 virtualenvwrapper.sh 和 python3
find / -name virtualenvwrapper.sh
vim ~/.bashrc
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV=~/.local/bin/virtualenv
source ~/.local/bin/virtualenvwrapper.sh
三、conda
1. 安装
进入 Anaconda 官网根据系统进行安装
2. 更换源
通过修改用户目录下的 .condarc
文件,Windows 执行 conda config --set show_channel_urls yes
生成该文件进行修改
channels:
- defaults
show_channel_urls: true
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
运行 conda clean -i
清楚索引缓存
运行 conda create --name env_name numpy
测试
具体参考:Anaconda 镜像使用帮助
3. 创建环境
# Python 2.7
conda create --name env_name python=2.7
# Python 3.8
conda create --name env_name python=3.8
4. 激活环境
# Linux/macOS
source activate env_name
# Windows
activate env_name
5. 退出环境
# Linux/macOS
source deactivate
# Windows
deactivate
6. 删除环境
conda remove --name env_name --all
7. 其他命令
# 列出系统有用指令
conda info -e
conda env list
# 查看当前环境下已安装的包
conda list
# 查看某个指定环境的已安装包
conda list --name env_name
# 查找 package 信息
conda search package_name
# 安装 package
conda install --name env_name package_name
# 更新 package
conda update --name env_name package_name
# 删除 package
conda remove --name env_name package_name
* Anaconda创建环境失败问题
1. 控制台输入命令
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --set show_channel_urls yes
2. 打开用户目录下的 .condarc 文件
删除 default 行内容,在重新更新源地址
四、pipenv
1. 安装
pip install pipenv
2. 创建环境
cd project_path
# 创建
pipenv install
# 或者直接安装库
pipenv install requests
3. 激活环境
# 显式激活环境
pipenv shell
# 不显式激活环境在当前项目环境中执行:使用虚拟环境下的解释器,而不是全局解释器
pipenv run python app.py
执行
pipenv shell
或pipenv run
时,Pipenv 自动从项目目录下的.env
文件中加载环境