资讯专栏INFORMATION COLUMN

python 虚拟环境搭建

makeFoxPlay / 3336人阅读

摘要:设置步骤根据需要,设置不同版本的虚拟环境,本文以为例。这是为什么呢这一点是为了在的虚拟环境中使用。使用了一段时间虚拟环境的我觉得这项操作十分的人文关怀,绕开了那些乱七八糟的环境和版本。

写这篇的原因是在使用 python 的过程中,陆续安装了 python2.7、python3.6、python3.7 的版本,区分 python2 和 python3 还好,而更新到 python3.7 后,每次安装使用命令pip3 install pkg-name 总是容易安装到 python3.7 的 site-packages 中,而我是想要在 python3.6 环境下进行运行,这个问题如果有更简便的解决方法,还请评论区留言。那么,一个好的方法就是安装 python 虚拟环境,随便你想在哪个版本下进行开发,减少了版本混乱带来的问题。

下面我们来看具体步骤,以及如何在 PyCharmjupyter notebook 中使用虚拟环境。


设置步骤

根据需要,设置不同版本的 python 虚拟环境,本文以 python3.6 为例。创建一个名为 python036 的环境,指定 Python 版本是 3.6,conda 会为我们自动寻找 3.6.x 中的最新版本。在执行这一步时要确保你的网络连接正常。

conda create --name python036 python=3.6

新创建好的环境就保存在了/anaconda3/envs/python036文件夹下,用户安装的不同 python 环境都会被放在该目录下(在安装过程中会显示environment location),可以在命令中运行conda info -e查看已安装的环境,当前被激活的环境会显示有一个星号或者括号。以本机为例如下:

# conda environments:
#
base                  *  /anaconda3
basemap                  /anaconda3/envs/basemap
python036                /anaconda3/envs/python036
python36                 /anaconda3/envs/python36

在使用虚拟环境时需要注意的一点就是:在每次使用虚拟环境时,需要先激活它(包括安装包在该环境中的时候)。

输入下列命令来激活新的虚拟环境:

source activate python036

此时,激活后 terminal 会显示如下,多出了 python036 的字样:

(python036) MacBook-Pro:~ user$ 

实际上,系统做的事情就是把默认的环境从 PATH 中去除,再把 3.6 对应的命令加入 PATH。

接下来就可以在该环境下,即你指定的某一个 python 版本环境下愉快的写代码了。

当你想恢复默认环境时,只需执行代码:

source deactivate python036

删除一个已有的虚拟环境,只需在命令行输入:

conda remove --name python036 --all
在PyCharm中使用虚拟环境

这一步设置很简单,打开 PyCharm --> Preferences --> Project Interpreter,点击右上方的设置图标按钮,Add Local 选中对应的路径即可。

但是要注意的是:上图中我添加的路径是 pythonw,而不是python

这是为什么呢?

这一点是为了在 PyCharm 的虚拟环境中使用 Matplotlib。如果直接使用python,会导致无法正常引入 Matplotlib,因为我们这里是使用 conda 进行管理的,官方的解释如下:

看到这里就很清楚该怎么做了,因此解决了这个问题,就可以在 PyCharm 中畅通无阻的写代码了。

在jupyter notebook中使用虚拟环境

要想让 jupyter notebook 支持虚拟运行环境,只需在 Anaconda 里安装一个插件,一行命令搞定:

conda install nb_conda

要注意的是需要在终端激活的 python 虚拟环境下执行该语句,然后打开 jupyter notebook 新建,就会看到我们的虚拟环境 python036 已经在列表中,选中它即可,如下图所示:

最后,当不需要这个虚拟环境时,使用命令:

conda remove --name python036 --all

删除已有的环境。使用conda info -e查看如下:

# conda environments:
#
base                  *  /anaconda3
basemap                  /anaconda3/envs/basemap
python36                 /anaconda3/envs/python36

环境 python036 已安全删除。

使用了一段时间虚拟环境的我觉得这项操作十分的人文关怀,绕开了那些乱七八糟的环境和版本。需要注意的是每次必须先使用source activate python036激活环境,否则徒劳。这一点也是一开始使用比较容易忘的地方。

今天的分享主要是关于 python 虚拟环境的安装和管理,也许不是最全的,但用来使用应该足以应付,这也是在使用过程中遇到问题而去解决而“被逼的”一次主动学习。如果有更好的方法,欢迎评论区见!


参考链接:
Anaconda使用conda管理技巧汇总
如何在Jupyter Notebook中使用Python虚拟环境?
Working with Matplotlib on OSX

不足之处,欢迎指正。

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

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

相关文章

  • 搭建Python虚拟环境

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

    hedzr 评论0 收藏0
  • 升级python版本和搭建环境

    摘要:官网下载最新的安装文件之后,双击选择即可升级。结果如下证明升级成功。所以我们需要重新搭建虚拟环境。我之前使用的虚拟环境是使用生成的这次使用自带的工具创建虚拟环境。在此之前首先导出之前虚拟环境安装的库。进入此文件的文件夹执行即可激活虚拟环境。 ModuleNotFoundError: No module named _contextvars 由于上面这个错误我需要把我的Python版本从...

    tuniutech 评论0 收藏0
  • 基于 Python 的 Scrapy 爬虫入门:环境搭建

    摘要:一基础环境由于不是职业的开发者,因此环境是基于的。二安装打开命令行工具创建虚拟环境,默认情况下会创建目录,所有的虚拟环境都会产生一个子目录保存在此,里面包含基本程序文件以及库文件。 目录 基于 Python 的 Scrapy 爬虫入门:环境搭建 基于 Python 的 Scrapy 爬虫入门:页面提取 基于 Python 的 Scrapy 爬虫入门:图片处理 作为一个全栈工程师(...

    Gu_Yan 评论0 收藏0
  • 使用ansible搭建python多版本开发环境

    摘要:恰好最近在学习,决定使用来部署的多版本环境。说明这里一个只能建立一个开发环境,多个开发环境需要执行多次由于具有幂等性,多次相同的执行并不会导致覆盖。 背景 在学习python过程中,centos系统自带的python版本比较滞后。在测试过程中,往往需要多个版本,但又不想影响系统自带的版本;尤其是在学习django过程中,python版本切换更加频繁,因此有了多版本切换需求。 在网上查了...

    KaltZK 评论0 收藏0

发表评论

0条评论

makeFoxPlay

|高级讲师

TA的文章

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