python——虚拟环境
1.为什么使用虚拟环境及作用
由上图所示,当不同的项目之间使用的版本不同时,python2.x与python3.x可以在服务器上共存,但是django版本此时无法为某一项目选择特定的版本。此时在python中可以使用虚拟环境来解决。在虚拟环境1中为A项目配置相关版本软件,在虚拟环境2中为B项目配置相关版本软件。
虚拟环境作用
用于安装不同版本的套件
virtualenv用于创建独立的python环境,多个python相互独立,互不影响。
- 在没有权限的情况下安装新套件
- 不同应用可以使用不同的套件版本
- 套件升级不影响其他的应用
2.虚拟环境搭建
2.1 安装虚拟环境
sudo pip3 install virtualenv
sudo pip3 install virtualenvwrapper
安装好虚拟环境之后,如果提示找不到mkvirtualenv命令,必须配置环境变量:
# 1.创建目录用于存放虚拟环境
mkdir $HOME/.virtualenvs#可使用默认,跳过# 2.添加环境变量(~/.bashrc文件)
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source/usr/local/bin/virtualenvwrapper.sh# 3.生效配置
source~/.bashrc
2.2 创建虚拟环境
提示:如果不指定python版本,默认安装的是python2的虚拟环境
创建默认python版本的虚拟环境
mkvirtualenv 虚拟环境名称# 不指定版本的话默认python2 mkvirtualenv-p python路径 虚拟环境名称# 指定版本路径的话,可创建python3的虚拟环境
注意:
- 在创建虚拟环时,需要联网
- 创建成功后,会自动工作在这个虚拟环境上
- 工作在虚拟环境上,提示符嘴前面会出现“虚拟环境名称”
虚拟环境的默认位置:
/root/.virtualenvs/虚拟环境名称
进入以及切换虚拟环境
workon# 列出已经存在的虚拟环境
workon 虚拟环境名称# 进入虚拟环境
退出虚拟环境
deactivate# 退出虚拟环境
删除虚拟环境
rmvirtualenv 虚拟环境名# 删除虚拟环境
提示:如果此时想要删除当前的虚拟环境,需要先退出才能删除
2.3 在虚拟环境中安装相关包
# 在虚拟环境中安装包
pip install 包名==版本号#“==”可用于指定版本号# 查看已经安装的包
pip freeze(mywork)[root@VM-0-16-centos home]# pip freeze
asgiref==3.4.1
Django==3.2.12
pytz==2021.3
sqlparse==0.4.2
typing_extensions==4.0.1