电脑上更新python版本后 mkvirtualenv python3会自动更改吗

在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
如题,virtualenv的python版本是2.7,现在装了2.7.4,如何将virtualenv里的版本也更新到2.7.4呢?
如果是2.6,那么这种跨大版本的又该如何升级到2.7呢?
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
我是使用的 virtualenvwrapper .
使用以下就会使用系统的 python 版本升级:
mkvirtualenv exist_virtualenv_name
副作用,virtualenv虚拟环境中之前安装的libs 都需要重新安装
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
为什么不直接把原来的virtualenv文件夹删除, 然后一现有的2.7.4为蓝本创建一个新的virtualenv?
virtualenv的本意就是要实现可以自由移植的虚拟环境
至于module的dependency, 可以在删除之前, 用 pip freeze 记录下相关的module
pip freeze & requirements.txt
rm -rf &你的virtualenv 文件夹&
virtualenv &新的virtualenv 文件夹&
source &新的virtualenv文件夹&/bin/activate
pip install -r requirements.txt
这样就完成迁移了
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
先升级python后,pip就不能用了。在python3.6.1中使用下面的命令更新成功,不用重新安装其他包。
mkvirtualenv --python=python3.6 superxxx
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
我也碰到了这个问题,用brew升级python的时候忘记了备份,升级之后才发现pip也不能正常工作了,不过幸好找到了解决方法,重新安装几百兆的package实在是不能忍……
先将虚拟环境中的部分文件删除
cd &EXISTING_ENV_PATH&rm .Pythonrm bin/pip{,2,2.7}rm bin/python{,2,2.7}rm -r include/python2.7rm lib/python2.7/*rm -r lib/python2.7/distutilsrm lib/python2.7/site-packages/easy_install.*rm -r lib/python2.7/site-packages/piprm -r lib/python2.7/site-packages/pip-*.dist-inform -r lib/python2.7/site-packages/setuptoolsrm -r lib/python2.7/site-packages/setuptools-*.dist-info
删除之后,再建立一次虚拟环境,目录还是用原来的目录
virtualenv &EXISTING_ENV_PATH&
同步到新浪微博
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:
在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。
问题对人有帮助,内容完整,我也想知道答案
问题没有实际价值,缺少关键内容,没有改进余地
如题,virtualenv的python版本是2.7,现在装了2.7.4,如何将virtualenv里的版本也更新到2.7.4呢?
如果是2.6,那么这种跨大版本的又该如何升级到2.7呢?
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
先升级python后,pip就不能用了。在python3.6.1中使用下面的命令更新成功,不用重新安装其他包。
mkvirtualenv --python=python3.6 superxxx
答案对人有帮助,有参考价值
答案没帮助,是错误的答案,答非所问
我是使用的 virtualenvwrapper .
使用以下就会使用系统的 python 版本升级:
mkvirtualenv exist_virtualenv_name
副作用,virtualenv虚拟环境中之前安装的libs 都需要重新安装
分享到微博?
关闭理由:
删除理由:
忽略理由:
推广(招聘、广告、SEO 等)方面的内容
与已有问题重复(请编辑该提问指向已有相同问题)
答非所问,不符合答题要求
宜作评论而非答案
带有人身攻击、辱骂、仇恨等违反条款的内容
无法获得确切结果的问题
非开发直接相关的问题
非技术提问的讨论型问题
其他原因(请补充说明)
我要该,理由是:
在 SegmentFault,学习技能、解决问题
每个月,我们帮助 1000 万的开发者解决各种各样的技术问题。并助力他们在技术能力、职业生涯、影响力上获得提升。python virtualenv使用 解决依赖、版本等问题 – 运维生存时间
你可能喜欢
有回复时邮件通知我
关于本站 本站以分享运维技术为主,欢迎大家参与技术分享,同时也欢迎大家吐槽,本站提供以下交流圈:QQ群①:*****(满)QQ群②:6690706 QQ群③: QQ群④:(新) 微信公众号:ttlsacom 商务合作QQ:
记住我的登录信息
点击“立即注册”转到用户注册页面。
输入用户名或电子邮箱地址,您会收到一封新密码链接的电子邮件。
用户名或电子邮件地址python环境管理神器,抛弃virtualenv吧!
我的图书馆
python环境管理神器,抛弃virtualenv吧!
搞python的都知道python三神器pip\virtualenv\fabric,准确的说应该是环境部署管理三神器,几年前我也一直用这套东西管理环境,确实好用,但是直到遇到了miniconda,才开始用conda管理环境。说实话改用miniconda很重要的一个原因是python版本的管理,以前都是py2,三神器用起来爽爽的,但是py3出了以后还要加个pyenv管理py版本,就觉得比较麻烦,切换版本,切换环境。接触到conda还是让人眼前一亮的感觉。下面简单说一下miniconda的实际应用,这里只是简单说一下部署环境用到的一些命令,大家简单体会下,更多的信息可以查看官网教程哦。一、windows环境下使用首先去miniconda官网下载windows系统对应位数的miniconda 网址:https://conda.io/miniconda.html下载py3或者py2其实都无所谓,因为创建环境的时候可以指定py版本。下载完了以后就是双击-》下一步-》选择安装路径-》安装成功安装完了以后把conda的bin目录加到系统环境变量里面,然后再cmd控制台输入conda -h 就会出现帮助信息安装完了,然后就是创建一个新的环境,输入命令 conda create -n toutiao python=3,然后会询问你是不是安装一些包,输入y,就会自动创建一个名字为toutiao的环境,使用的python是py3,里面自动包含了pip等必须的软件,如下图环境创建好了,还要激活一下输入activate toutiao 进入环境,cmd上也有提示 ,前面会多一个环境名称 toutiao ,这样就是在环境里面了,退出的话就是deactivate toutiao然后就可以直接安装相关软件了,安装django可以直接输入pip install django==1.10 这样就不会污染系统环境了,十分好用。最后可以在pycharm中指定本地环境,选择对应的py,就可以开开心心的开发啦!二、linux环境下使用这里以centos为例,只说一下安装,使用命令和windows是一样的,不再重复:首先获取安装包wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh然后给这个文件权限 chmod x ./Miniconda3-latest-Linux-x86_64.sh最后指定目录安装,比如安装到~/local/conda,使用./Miniconda3-latest-Linux-x86_64.sh -p /home/work/local/conda特别注意,路径一定用全路径,个人主目录不能使用~ 代替。好了就说这么多了,更多知识大家可以点击我的头像关注我的博客哦!转载请标明出处
喜欢该文的人也喜欢创建虚拟运行环境及多版本python切换
最近由于要装量化方面的包,但是老是出现错误。本来我不想这么麻烦的,就想使用系统中的python环境,但是经过几天几夜的尝试,但是最后发现还是不行。即使是安装anaconda还是有问题,其他网友都没有问题,唯独我问题不断,也许是因为我是小白的原因吧。
下面是我安装虚拟运行环境以及多版本python切换的方法。主要是参考其他网友的安装方法,我只是整合而已。
我们需要的软件包有:pyenv、pyenv-virtualenv。
首先安装pyenv。
这个有几种方法:
brew install pyenv
git clone git://github.com/yyuu/pyenv.git ~/.pyenv
安装后,需要将其写入系统文件中,有些电脑是写入.bashrc文件、有些电脑是写入.bash_profile中,如果系统问价是.zshrc文件,那怎样确定是写入那个文件呢?
Mac OS 一般使用 bash 作为默认 shell,Mac OS 系统的环境变量加载顺序为: -&/etc/profile -& /etc/paths -& ~/.bash_profile
-&~/.bash_login -& ~/.profile
-&~/.bashrc
前两个是系统级别的,系统启动就会加载,后面几个是当前用户级的环境变量。后面3个按照从前往后的顺序读取,如果 ~/.bash_profile 文件存在,则后面的几个文件就会被忽略不读了,如果 ~/.bash_profile 文件不存在,才会以此类推读取后面的文件。~/.bashrc 没有上述规则,它是 bash shell 打开的时候载入的。
我们这这里讲单个用户设置环境变量,而不是全局设置,~/.bash_profile (任意一个文件中添加用户级环境变量),需要注意的是:Linux 里面是 .bashrc,而 Mac 是 .bash_profile,若 bash shell 是以 login 方式执行时,才会读取此文件,该文件仅仅执行一次。
因此,根据上面说的,mac中应该是写入.bash_profile 文件中。
那又怎样查看自己电脑是不是应该写入.zshrc文件中呢?
zsh好像是与bash一样是一种shell语言。
简单的方法就是
cd ~/.bash 看看有没有这样的文件(呵呵)。
其实mac和Linux/Unix默认都是使用Bash。听说zsh是shell语言中的终极shell。不知道使用zsh会是什么感觉,对我这样的小白,还是留着以后慢慢探讨吧。
闲话少说,还是回归正题。
上面提到要将pyenv写入系统文件。
使用vim ~/.bash_profile打开.bash_profile文件。在文件中依次加入
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
或者在终端上直接使用echo命令:
echo 'export PYENV_ROOT="$HOME/.pyenv"' && ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"
&& ~/.bash_profile
echo 'eval "$(pyenv init -)"' && ~/.bash_profile #最后添加pyenv init
exec $SHELL -l
#输入命令重启 Shell,然后就可以重启pyenv
与pyenv整合,实现支持多个Python版本的virtualenv虚拟环境
接着,安装pyenv-virtualenv插件
brew install pyenv-virtualenv
使用pyenv安装python版本
前面已经提到如何安装pyenv。下面我将介绍如何使用pyenv安装python版本。
查看可安装的python版本
安装指定的python版本
pyenv install 3.4.1
安装对应版本的虚拟环境,取名为venv341
注意:是先用pyenv安装了对应python版本后,在进行下面操作。
pyenv virtualenv 3.4.1 venv341
有些python版本有点大,这样安装会很耗费时间的。
我们可以将python版本下载下来,然后移动到~/.pyenv/cache/文件夹中。
~/.pyenv/文件夹是在安装pyenv模块后就会自动创建的。由于~/.pyenv/是隐藏文件,我们可以使用ls -a查看。
对应的版本python版本都安装在~/.pyenv/versions文件夹中。
使用pip安装的包完成之后,可能需要对数据库进行更新:(务必执行下面命令)
pyenv rehash
python版本切换
全局版本切换:
pyenv global anaconda-2.4.0
局部版本切换
pyenv local python3.4.1
切换和使用新的python虚拟环境:
pyenv activate env271
这样就能切换为这个版本的虚拟环境。通过输入python查看现在版本,可以发现处于虚拟环境下了。
下面基本上你就可以在这个虚拟环境里面为所欲为了 :) 再也不用担心系统路径被搞乱的问题了
如果要切换回系统环境, 运行这个命令即可
pyenv deactivate
那如果要删除这个虚拟环境呢? 答案简单而且粗暴,只要直接删除它所在的目录就好:
rm -rf ~/.pyenv/versions/env271/
或者卸载:
pyenv uninstall env271
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!

我要回帖

更多关于 virtualenv python3 的文章

 

随机推荐