详解python配置虚拟环境

yipeiwu_com6年前Python基础

python中通过虚拟化出来一个空间,与主环境完全隔离,避免项目中对于环境要求,造成的插件版本混乱(python特别吃环境)

mac 的配置

前文已经说过python3的安装,我们基本在生产电脑上只是用python3和pip3但是命令行每次都需要写上版本数字很麻烦,这里作者教大家一个一劳永逸的办法

  1. 打开终端
  2. sudo vi ~/.bash_profile
  3. 输入密码
  4. 在配置文件中添加
alias pip=pip3
alias python= python3

 在其他系统中同理设置,这样我们在pip的时候就是pip3,python的时候就是python3

打开终端下载虚拟环境需要的库

sudo pip install virtualenv
sudo pip install virtualenvwrapper

这个时候我们在命令行中输入 mkvirtualenv -p python3 虚拟环境名称的时候,会报错,说mkvirtualenv没有这个命令

原因是我们我们配置虚拟环境的环境变量,包括workon我们也无法使用

打开终端

which virtualenvwrapper.sh

sudo vi ~/.bash_profile

添加下面的代码

export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_SCRIPT=/Library/Frameworks/Python.framework/Versions/3.6/bin/virtualenvwrapper.sh
export VIRTUALENVWRAPPER_PYTHON=/Library/Frameworks/Python.framework/Versions/3.6/bin/python3
export VIRTUALENVWRAPPER_VIRTUALENV=/Library/Frameworks/Python.framework/Versions/3.6/bin/virtualenv
export VIRTUALENVWRAPPER_VIRTUALENV_ARGS='--no-site-packages'
source /Library/Frameworks/Python.framework/Versions/3.6/bin/virtualenvwrapper.sh

注意:所有的路径都必须要和你的安装路径是一样的

python3的安装路径

这个时候我们就可以使用之前的命令了

创建虚拟环境(必须要加上版本号,不然默认python2)

mkvirtualenv -p python3 虚拟环境名称
workon            虚拟环境名
deactivate          退出虚拟环境
rmvirtualenv 虚拟环境名称              删除虚拟环境
which python             可以查看虚拟环境的python的路径

ubuntu18.04的配置

前面的配置都是一样的,需要修改一个路径配置文件

which virtualenvwrapper.sh     查看虚拟环境的配置文静路径
sudo vi 虚拟环境的配置文件路径
将   VIRTUALENVWRAPPER_PYTHON="$(command \which python)
改为   VIRTUALENVWRAPPER_PYTHON="$(command \which python3)

mkdir $HOME/.virtualenvs
mkdir $HOME/workspace
sudo vi ~/.bashrc



if [ -f ~/.local/bin/virtualenvwrapper.sh ]; then
export WORKON_HOME=$HOME/.virtualenvs
export PROJECT_HOME=$HOME/workspaceexport PROJECT_HOME=$HOME/workspace
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source ~/.local/bin/virtualenvwrapper.sh
fi

 注意这里的配置文件路径需要核对之后在粘贴,不然会报错

保存修改的配置信息

source vi ~/.bashrc

以上所述是小编给大家介绍的python配置虚拟环境详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

Python八大常见排序算法定义、实现及时间消耗效率分析

本文实例讲述了Python八大常见排序算法定义、实现及时间消耗效率分析。分享给大家供大家参考,具体如下: 昨晚上开始总结了一下常见的几种排序算法,由于之前我已经写了好几篇排序的算法的相关...

python对list中的每个元素进行某种操作的方法

如下所示: ''' 对列表中的每个元素进行某种操作 ''' def add(c): return c**2 l = [1,2,3] d1 = map(add,l) print d...

Python实现的批量下载RFC文档

RFC文档有很多,有时候在没有联网的情况下也想翻阅,只能下载一份留存本地了。 看了看地址列表,大概是这个范围: http://www.networksorcery.com/enp/rfc...

django使用图片延时加载引起后台404错误

django使用图片延时加载引起后台404错误

环境 django 1.10.6 缘起 今天接到一个任务——解决终端满屏日志中的无用错误。 django 会尽可能给你准确报出错误位置,但是一些复杂,深层次的错误它自带的错误日志有些不足...

Python中的取模运算方法

Python中的取模运算方法

所谓取模运算,就是计算两个数相除之后的余数,符号是%。如a % b就是计算a除以b的余数。用数学语言来描述,就是如果存在整数n和m,其中0 <= m < b,使得a = n...