使用virtualenv创建python虚拟环境
在Windows的Python开发中经常使用anaconda来配置虚拟环境,但是在Linux中使用conda经常会出现环境变量报错等一系列问题,因此本文将总结以下在Linux中使用vitualenv来配置虚拟环境。
venv
venv是python在版本3.3后自带的功能
1 | cd /path/to/proj |
激活虚拟环境后,命令行最前面会像conda一样显示环境名,在虚拟环境中,pip安装的包与其他环境是隔离的,可以安装随意的版本而不影响其它环境
1 | deactivate #退出环境 |
venv只能创建虚拟环境,不能指定python版本比较麻烦,并且不能查看环境列表。
virtualenv
virtualenv是venv的加强版,可以指定python版本
1 | sudo apt install virtualenv |
使用virtualenv
1 | cd /path/to/proj |
但是virtualenv也不能查看当前系统安装的环境列表。
virtualenvwrapper
virtualenvwrapper相当于是virtualenv的管理工具,可以查看环境列表
安装virtualenvwrapper
1 | pip3 install virtualenvwrapper |
配置virtualenvwrapper
1 | export WORKON_HOME=$HOME/.virtualenvs |
重启终端或者执行以下命令
1 | source ~/.bashrc |
virtualenvwrapper相关命令
1 | mkvirtualenv env_name -p python3.8 #创建指定python版本虚拟环境 |
Pipenv
pipenv和vituralenvwrapper类似
1 | pip3 install pipenv |
使用方法
1 | pipenv --python 3.x.x #指定python版本创建虚拟环境 |
删除虚拟环境
1 | pipenv --rm |
Python版本
在ubuntu中,apt安装的python版本可能不符合要求,因此需要安装其他版本的python,这里有几种方法
源码编译
下载python源码进行编译,适合比较古老或软件适配不好的系统
添加PPA源
1 | sudo add-apt-repository ppa:deadsnakes/ppa |
安装完成后,要运行python3.x,使用python3.x
命令
但是这种方法适合较新的系统,ppa:deadsnakes 仓库停止维护旧版本 Ubuntu ,删除了针对 Ubuntu bionic 18.04 的所有 Python 预编译包,目前仅支持focal和jammy。
Pyenv
pyenv是一个python版本管理工具,可以很方便地切换python版本,pyenv的原理也是从下载python源码进行编译。