Python虚拟环境设置

2018-4-2更新:

centos7创建虚拟环境

在最新的CentOS版本7.3中,自带的Python版本依旧是2.7,而Django的建议版本已经到了3.x。所以需要安装新版本的Python,同时保留旧的Python环境。

首先安装epel源

查看可用的python3版本

可以看见列表里提供Python 3.4

下面安装pip,python2.7和pyhon3.4的pip是可以同时存在的,默认分别为pip,pip3

查看pip版本信息

其实是一个东西,不过安装在了不同目录下。一般使用其中一个就行了。例如安装virtualenv

使用virtualenv创建python3虚拟环境

 

1、安装virtualenv

安装方法

2、安装virtualenvwrapper

安装方法

需要注意的是这两个都得装,如果只装python3的话,workon命令是用不了的。

设置

查找位置

结果我们将会查找到两个位置

稍后我们用python3中的位置。

编辑配置文件

将以下两个命令添加到最后面,指定了虚拟环境的位置。

执行.bashrc使文件生效

创建虚拟环境

这样我们就创建了虚拟环境blog_env_py3

通过workon命令就可以查看所有虚拟环境的目录,进入该虚拟环境

3、在虚拟环境中安装依赖包

进入windows中的blog_test中,执行如下命令,导出所有需要安装的包

通过winscp软件将生成的requirements.txt导入到linux中

进入linux中的虚拟环境blog_env_py3中,执行以下命令,即可安装其中的所有包

其中安装mysqlclient==1.3.12时,会报错,需要再装一个依赖包

通过pip list 检查安装的包。

 

 

virtualenv

virtualenv 是一个可以在同一计算机中隔离多个python版本的工具。有时,两个不同的项目可能需要不同版本的python,如 python2.6.6 / python3.0 ,但是如果都装到一起,经常会导致问题。所以需要一个工具能够将这两种或几种不同版本的环境隔离开来,需要哪个版本就切换到哪个版本做为默认版本。virtualenv 既是满足这个需求的工具。它能够用于创建独立的Python环境,多个Python相互独立,互不影响,能够:

  • 在没有权限的情况下安装新套件
  • 不同应用可以使用不同的套件版本
  • 套件升级不影响其他应用

安装: pip install virtualenv

使用方法

创建环境

virtualenv [新环境名] :这会再当前目录下创建一个新环境目录 可使用 virtualenv –help 来查看如何使用。可以使用参数 –python=/usr/bin/python3 来创建一个已经安装的的Python环境。

使用环境

切换到新环境目录 执行:source ./bin/activate 来激活环境,激活后在命令行的前面会出现新环境名称 接下来可使用pip命令安装新环境需要的各种包。(pip命令在创建新环境时自带)

退出虚拟环境

deactivate

如果要删除虚拟环境,只需退出虚拟环境后,删除对应的虚拟环境目录即可。不影响其他环境。

注意事项

如果没有启动虚拟环境,系统也安装了pip工具,那么套件将被安装在系统环境中,为了避免发生此事,可以在~/.bashrc文件中加上:export PIP_REQUIRE_VIRTUALENV=true 或者让在执行pip的时候让系统自动开启虚拟环境:export PIP_RESPECT_VIRTUALENV=true

virtualenvwrapper

virtualenvwrappervirtualenv的扩展管理包,用于更方便管理虚拟环境,它可以做:

  • 将所有虚拟环境整合在一个目录下
  • 管理(新增,删除,复制)虚拟环境
  • 切换虚拟环境

安装

pip install virtualenvwrapper

使用方法

初始配置

默认virtualenvwrapper安装在/usr/local/bin下面,实际上需要运行virtualenvwrapper.sh文件才行;所以需要先进行配置一下:

  • 创建虚拟环境管理目录:
    mkdir $HOME/.local/virtualenvs
  • 在~/.bashrc中添加行:

  •  
  • 启动 virtualenvwrapper: source ~/.bashrc

使用方法

所有的命令可使用:virtualenvwrapper –help 进行查看,这里列出几个常用的:

创建基本环境:mkvirtualenv [环境名] 删除环境:rmvirtualenv [环境名] 激活环境:workon [环境名] 退出环境:deactivate 列出所有环境:workon 或者 lsvirtualenv -b

例如:

创建python3虚拟环境:

mkvirtualenv python=/usr/local/bin/python3 py3

创建python2虚拟环境:

mkvirtualenv python=/usr/local/bin/python2 myenv py2

这样会分别在~/.virtualenvs目录下创建两个目录: py3和py2

退出虚拟环境: deactivate

激活虚拟环境: workon py3

Categories: 未分类

2 Comments

Brigid Loperena · 06/12/2020 at 1:11 PM

Hi, I desire to subscribe for this post to obtain most up-to-date updates, so where can i do it please help.

cbd oil for pain · 07/07/2020 at 9:48 PM

Greate article. Keep posting such kind of information on your blog.
Im really impressed by it.
Hi there, You have performed a great job. I will certainly
digg it and for my part suggest to my friends. I’m sure they will be benefited from this site.

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *