0%

python 虚拟包管理工具

为什么需要虚拟包管理工具?

一般来说,在python实际的开发中,我们有时候需要不同版本的某个库,在这种情况下,python的虚拟包管理工具就诞生了!(当然我是为了保持系统的全局环境的干净)😀

pyenv 和 pyvenv 和 virtualenv 傻傻分不清楚 😅

pyenv 是第三方的一个虚拟包管理

pyvenv 是在python3.3 版本之后才出现的一种虚拟包管理,也就是说python2和python3.3 之前的不能用

virtualenv 是目前流行的虚拟环境配置工具,支持py2和py3

详细的区别点我

pyvenv 的使用和 virtualenv的使用

pyvenv

pyvenv 会继承全局环境中python的版本,但是默认不会继承全局中的包

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 这里的python只的是py3
python -m venv myenv(你要创建的虚拟环境的文件夹名)

# 只限于linux
pyvenv myenv

# cd 到 myenv
cd myenv

# 激活虚拟环境 win下
.\Scripts\activate.bat

# 激活虚拟环境 linux下
source ./bin/activate

# 当在命令行下路径名前出现myenv的时候,表明现在处于虚拟环境下


# 退出虚拟环境
# win
.\Scripts\deactivate.bat

# linux
deactivate

注意,在win下,一定要在cmd的环境中使用win命令,git bash 和 powershell 都有问题

virtualenv

virtualenv 默认会继承全局中的python版本和所有包

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# virtualenv 安装
pip install virtualenv


# 创建名为 venv的不继承全局包的虚拟环境
virtualenv --no-site-packages venv

# 激活虚拟环境
source ./bin/activate # linux

.\Scripts\activate.bat # win

# 退出虚拟环境
deactivate # linux

.\Scripts\deactivate.bat # win