0%

Python 本地开发多环境搭建

环境

  • 操作系统 win10

安装

官方网站

找到自己想要的 python 对应平台,对应版本下载并安装

1
python --version

结果显示对应的版本号即安装正确

多环境

什么是多环境,比方说,我希望本地有多个 python 版本,2.7,3.6,3.9 等等,我又希望 python 的依赖包可以是根据项目所需来安装下载,而不是多个项目共享同样的包环境,这时候就会需要用到一些虚拟环境

网上关于 python 虚拟环境的使用方式,五花八门,选择太多有时也不是一件好的事情,所以这里我只介绍我常用的方法 virtualenv

安装 virtualenv

1
pip install virtualenv
1
virtualenv --version 

正确输出版本号说明安装成功

创建一个虚拟环境

1
virtualenv project_1

会在当前运行目录创建一个完整的 python 运行环境,所以建议在统一的一个目录去存放这些虚拟环境

激活环境

1
2
cd project_1
.\Scripts\activate # windows 环境,类似的 mac 环境,或者 linux 环境下也是类似找到 activate 执行即可

检验 python 和 pip

1
2
python --version # 可以正常输入相应的 python 版本号
pip list # 可以看到只有几个类库,环境比较干净

退出环境

1
deactivate # 这时切换再执行的 python 命令则是一开始安装的环境了

实战1-同样版本 python, 不同虚拟环境(类库存在不一样的情况)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
mkdir ~/test
cd ~/test

# 创建两个环境
virtualenv project1_env
virtualenv project2_env
# 上一步执行完便会在 ~/test 目录产生两个环境目录

# 激活环境1
cd ~/test/project1_env
.\Scripts\activate

# 激活以后你在这里运行的 python 命令都是虚拟环境的了
pip install requests
pip list # 可以看到 requests 的版本号,我这里是 2.26.0

# 切换到环境2
cd ~/test/project2_env
.\Scripts\activate

pip list # 可以看到并没有 requests 包,因为环境之间是隔离的
pip install requests<2.26.0 # 我们下载一个和上面不同版本
pip list # 这时候看到 requests 是 2.25.1 版本

在我们遇到不同的项目时,切换到不同的虚拟环境下,下载对应的包就行,项目中一般会有一个依赖关系文件 requirements.txt

1
pip install -r requirements.txt

实战2-不同 python 版本

目前比较多的项目是3.x版本,但是因为历史原因可能有的项目还是2.x版本,这时候我们本地就有多版本虚拟环境的必要了

在这个前提下,我们需要安装另外一个版本的python,根据上面的安装章节找到不同的版本,然后安装

1
2
3
4
5
6
7
8
9
10
11
12
cd ~/test
virtualenv py3 # 这时候创建了一个默认python3环境,因为我安装的就是3.6的版本
virtualenv -p C:\Python27\python.exe py2 # -p 后面跟上你安装的不同版本python可执行命令

# 测试
cd ~/test/py3
.\Scripts\activate
python --version # 我这里结果是 3.6.8

cd ~/test/py2
.\Scripts\activate
python --version # 我这里结果是 2.7.18

总结

其实多环境目录就是会产生多个环境目录,这些目录有着 python 运行的完整环境,当我们需要用某个环境去执行,就找到这个目录下 python 可执行文件运行就可,放到 idea 编辑器中调试也是找到对应的目录即可