标签:set div 通过 pip3 virt 三方 mkdir -o 假设
假设你有两个Python项目-A和B,这两个项目都需要使用同一个第三方模块-tensorflow。如果这两个项目使用相同的tensorflow版本,也许不会有什么问题。
但是,当A和B项目使用不同的tensorflow版本时-A使用tensorflow 0.70版本;B使用tensorflow 0.80版本。由于Python导入模块不能区分模块版本,导致A、B不能使用tensorflow的不同版本,这在很多情况下是不能接受的。
使用虚拟环境的另一个好处是:保持开发环境的简洁、有序。
Python虚拟环境可以为项目创建相互独立的开发环境,也就是你可以为每个项目安装各自使用依赖模块。
使用虚拟环境可以很好的解决上面A、B项目遇到的问题:为A、B项目分别创建虚拟环境,然后在各自的虚拟环境中安装不同的tensorflow版本。
使用虚拟环境需要借助virtualenv或pyvenv,它们的使用非常简单。
如果你使用Python 2,你可以使用pip安装virtualenv
$sudo pip install virtualenv
如果你使用Python 3,它默认安装了pyvenv。
virtualenv和pyvenv的使用方法类似。由于pyvenv是较新的工具,本帖以它为例。
创建一个存放虚拟环境的目录:
$mkdir python-env $cd python-env
创建一个虚拟环境:
bin/pyvenv-3.6 env_A
上面命令在当前目录创建了env_A目录,目录结构:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
├──bin
│ ├──activate
│ ├──activate.csh
│ ├──activate.fish
│ ├──easy_install
│ ├──easy_install-3.5
│ ├──pip
│ ├──pip3
│ ├──pip3.5
│ ├──python->python3.5
│ ├──python3->python3.5
│ └──python3.5->/opt/local/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5
├──include
├──lib
│ └──python3.5
│ └──site-packages
└──pyvenv.cfg
|
使用创建的虚拟环境env_A:
source env/bin/activate
提示符中包含:
(env_A) [root@localhost python-env]
现在你通过pip安装的包都会安装这个虚拟环境中;导入(import)模块时也只能使用这个虚拟环境中的模块。
如果要退出env_A虚拟环境,执行:deactivate
(env_A)[root@localhost python-env]$deactivate
标签:set div 通过 pip3 virt 三方 mkdir -o 假设
原文地址:https://www.cnblogs.com/students/p/10012650.html