资讯专栏INFORMATION COLUMN

python的虚拟环境

Chaz / 3556人阅读

摘要:什么是虚拟环境特有的一种软件环境创建多个环境,各个环境之间完全隔离,互不影响。在虚拟环境中安装的第三方包会安装在目录下。退出环境退出当前虚拟环境使用命令。

什么是虚拟环境
python特有的一种软件环境,创建多个python环境,各个环境之间完全隔离,互不影响。它可以用来解决Python项目开发和运行过程中的依赖项和版本问题,而不必和其他项目的Python环境以及全局的Python环境发生冲突。
安装
$ pip install virtualenv

注:Linux下默认未安装pip,需要手动安装pip命令。

sudo apt install python-pip    #python2.7安装
sudo apt install python3-pip   # python3安装 
pip install --upgrade pip      #pip 更新
创建虚拟环境

安装完成后,可以使用 virtualenv 命令创建放置虚拟环境的目录:

$ virtualenv  [OPTIONS]  [虚拟环境名称]

-p PYTHON_EXE, --python=PYTHON_EXE 指定生成的虚拟环境使用的Python解释器:

 #顺序都可以
 virtualenv -p /usr/bin/python3.6 ENV
 virtualenv  ENV --python=python3.6
 virtualenv  --python=python3.6 ENV 

ENV/libENV/include 目录中包含了虚拟环境ENV使用的库文件。在虚拟环境中安装的第三方包会安装在 ENV/lib/python3.4/site-packages 目录下。

ENV/bin 目录里面放置了可执行文件,在里面有新安装的Python 包中的可执行程序,包括pip等相关工具。

OPTIONS参数:
--no-site-packages 参数:

默认情况下,虚拟环境会依赖系统环境中的 sit package,就是说系统中已经安装好的第三方 package 也会安装在虚拟环境中,如果不想依赖这些 package,那么可以加上 --no-site-packages 参数建立虚拟环境。

$  virtualenv --no-site-packages [虚拟环境名称]
--version 显示软件的版本号:
# virtualenv --version
-h, --help 显示帮助信息:
# virtualenv -h
--no-setuptools 在新建的虚拟环境中不安装工具包:
# virtualenv --no-setuptools ENV
--no-pip 在新建的虚拟环境中不安装pip:
# virtualenv --no-pip ENV
--no-wheel 在新建的虚拟环境中不安装 wheel:
# virtualenv --no-wheel ENV
启动环境

新创建的虚拟环境目录中有一个启动脚本 ENV/bin/activate ,直接使用 source 命令来启动虚拟环境。

$ source ENV/bin/activate
退出环境

退出当前虚拟环境使用 deactivate 命令。

$ deactivate
安装 virtualenvwrapper 扩展包
Virtaulenvwrapper 是 virtualenv 的扩展包,可以把新创建的环境记录下来,不需要每次启动虚拟环境时都执行一遍 source 命令,可以更方便的管理虚拟环境。
它可以实现:
1、将所有虚拟环境整合在一个目录下
2、管理(新增,删除,复制)虚拟环境
3、快速切换虚拟环境
安装 virtualenvwrapper
$ pip install virtualenvwrapper 

此时还不能使用virtualenvwrapper,默认virtualenvwrapper安装在/usr/local/bin下面,实际上你需要运行virtualenvwrapper.sh文件才行,里面有安装步骤,我们照着操作把环境设置好。

创建存放虚拟环境的目录
# $HOME是用户主目录
$ mkdir $HOME/.virtualenvs
进入 用户主目录,打开 .bashrc 文件,添加如下代码:
export WORKON_HOME=$HOME/.virtualenvs
#export PROJECT_HOME=$HOME/Devel
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /usr/local/bin/virtualenvwrapper.sh
WORKON_HOME: 告诉 virtualenvwrapper 在哪里放置你的虚拟环境,默认是在 $HOME/.virtualenvs 目录下。如果这个目录不存在,virtualenvwrapper 运行的时候会自动创建它。

PROJECT_HOME :告诉virtualenvwrapper在哪里存放你的项目的工作目录

执行 source 命令,使刚添加的代码生效:
$ source .bashrc
windows下安装virtualenvwrapper
pip install virtualenvwrapper-win

设置环境变量

在系统变量中新建“变量名”:WORKON_HOME:“你自定义的路径”。
使用 virtualenvwrapper 虚拟环境相关操作:

lsvirtualenv: 列出虚拟环境列表(个人喜欢用第二个)
workon+Enter: 列出虚拟环境列表
mkvirtualenv [虚拟环境名称]: 新建虚拟环境
workon [虚拟环境名称]: 切换虚拟环境
rmvirtualenv [虚拟环境名称]: 删除虚拟环境
deactivate: 离开虚拟环境

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/42140.html

相关文章

  • 如何管理你下载一大堆Python包【❤️win环境及linux环境下创建虚拟环境详解❤️】

    引入—— 解决两个在python开发中很常见的问题: Python很万能,这谁都知道(我也知道哈),但这就意味着——Python的库多,是真的多!你要用哪个库,就直接下载!pip install!很简单吧,是很简单!但是,这样会很直接的带来一个问题,也是很多新手容易犯得——你一看他的Python环境,全是第三方包,密密麻麻的,甚至于开个pycharm,加载第三方包都得加载半年,他还不知道为啥(傻...

    phoenixsky 评论0 收藏0
  • python 虚拟环境搭建

    摘要:设置步骤根据需要,设置不同版本的虚拟环境,本文以为例。这是为什么呢这一点是为了在的虚拟环境中使用。使用了一段时间虚拟环境的我觉得这项操作十分的人文关怀,绕开了那些乱七八糟的环境和版本。 写这篇的原因是在使用 python 的过程中,陆续安装了 python2.7、python3.6、python3.7 的版本,区分 python2 和 python3 还好,而更新到 python3.7...

    makeFoxPlay 评论0 收藏0
  • python虚拟环境:envirtualevn 、pyevn

    摘要:虚拟环境非常有用,因为它可以防止系统出现包管理混乱和版本冲突的问题。为每个应用程序创建一个虚拟环境可以确保应用程序只能访问它们自己使用的包,从而全局解释器只作为一个源且依然整洁干净去更多的虚拟环境。另一个好处是,虚拟环境不需要管理员权限。 https://www.jianshu.com/p/08c... virtualenv 虚拟环境是在Python解释器上的一个私有复制,你可以在一个...

    ghnor 评论0 收藏0
  • python基础教程:虚拟环境

    摘要:不同虚拟环境内部的库版本涉及不会影响其它虚拟环境。接着,编辑,写入一下配置了配置虚拟环境的根目录的英文为了使以上配置生效,运行命令这时候,命令行里面就有了命令。 我们在写的Python程序的时候,经常会用到非标准库的包和模块,比如要求等非常有用的第三方包和模块。有时候也会用到某个包和模块的特定版本,可能是这个特定的版本修复了某个bug,或者是依赖的接口只有该版本有。也可能系统安装了Py...

    xiangzhihong 评论0 收藏0
  • 搭建Python虚拟环境

    摘要:为每个程序单独创建虚拟环境可以保证程序只能访问虚拟环境中的包,从而保持全局解释器的干净整洁,使其只作为创建更多虚拟环境的源。 说明 虚拟环境是 Python解释器的一个私有副本,在该环境中可安装私有包,且不会影响系统中安装的全局 Python解释器 虚拟环境非常有用,可以在系统的Python解释器中避免包的混乱和版本的冲突。为每个程序单独创建虚拟环境可以保证程序只能访问虚拟环境中的包,...

    hedzr 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<