美文网首页python热爱者Python新世界
选择了Anaconda下的conda工具作为python虚拟环境

选择了Anaconda下的conda工具作为python虚拟环境

作者: 48e0a32026ae | 来源:发表于2018-12-16 11:38 被阅读0次

    Python虚拟环境工具众多,我也使用了众多工具,最终还是选择了Anaconda下的conda工具作为虚拟环境搭建的工具,在正式开始前,说一下我此前的环境。

    当然在学习Python的道路上肯定会困难,没有好的学习资料,怎么去学习呢?

    学习Python中有不明白推荐加入交流群

                    号:960410445

                    群里有志同道合的小伙伴,互帮互助,

                    群里有不错的视频学习教程和PDF!

    系统环境:Mac Pro

    使用pyenv作为python版本控制,下载了python2.7、python3.6、python3.5等版本,使用pyenv-virtualenv作为虚拟环境控制的插件工具,两者其实挺好用的,然后我使用pyenv安装了anaconda 4.4.0并再其下使用conda来创建虚拟环境,就是所谓的虚拟环境中的虚拟环境。

    因为某些原因,将系统当前的pyenv相关的虚拟环境都删除了,决定使用anaconda重新弄一套虚拟环境,完全用conda来管理,不再弄那么复杂。

    首先去anaconda官网安装,这里选择安装anaconda 5.5.0,其内置python为python3.7,这个包的大小为600多M,解压安装后会占用磁盘2.2G,我也没想到居然这么大,无奈。

    安装完后,就要配置一下环境变量,Mac下的环境变量比较复杂,环境变量由多个文件控制,这些文件的优先级也不同,因为本人使用了zsh,所有处理在系统的环境变量配置文件中配置anaconda的路径,还需要在zsh的环境变量配置文件中配置,这是必要的,不然zsh中也无法直接使用conda。

    具体的路径需要根据自己的路径来确定。

    因为本地不再使用Mac自带的命令行,所以.bash_profile文件不用写也没问题,只使用zsh,还有需要提及的就是 echo"conda activate">>~/.zshrc在conda 4.4之后支持,此前的将conda引入PATH的方法变得不再推荐。

    这样就可以全局使用conda了,首先使用conda来创建一个虚拟环境

    conda create -n tfpy36 python=3.6

    创建完后,先来安装一下TensorFlow,这里安装1.9版本的,当前最新版为1.12,不得不说TensorFlow更新的很快。

    pip install -i https://pypi.doubanio.com/simple/ --trusted-host pypi.doubanio.com --upgrade tensorflow==1.9

    安装完后,可以进入python交互环境测试是否可以导入,通常没什么问题,然后我习惯性的安装ipython与jupyter,带来了问题。

    ipython与jupyter都是在虚拟环境下安装的,但进入ipython,发现是anaconda原本的python环境,即python3.7版本,此时无法通过ipython导入虚拟环境中安装的TensorFlow,有点懵,接着尝试jupyter,也是同样的情况,回想使用pyenv安装anaconda再在改anaconda下创建虚拟环境并安装TF不同,在此前的环境中虚拟环境中安装的ipython会被安装在虚拟环境中,可以直接导入虚拟环境的TF。

    这个问题应该不少见,所以查了一下,anaconda为了避免你在不同的虚拟环境都每次都要安装ipython或jupyter,将这些都安装在了根环境,安装 ipykernel解决问题,这个库会为ipython或jupyter提供虚拟环境壳的支持。

    conda install ipykernel

    至此,整个环境搞定,conda除了可以使用python3,同时还可以使用python2,非常方便。

    但还有可能在ipython可以使用不同版本的虚拟环境,但在jupyter无法使用不同版本的虚拟环境,此时就可以安装

    conda install nb_conda

    这样就可以直接进入jupyter选择不同的虚拟环境了,如下图:

    删除环境

    conda remove -n tfpy36 --all

    激活环境

    source activate tfpy36

    退出环境

    source deactivate

    小结

    python中很多工具都可以进行版本控制与虚拟环境的控制,我使用个多种,但最总还是返璞归真,使用anaconda提供的这套解决方案一劳永逸。

    2018版的PyCharm本身也支持创建新项目时,在工作目录创建相应的python环境,但我个人通常不这么做,因为每个项目都创建一个python虚拟环境其实没什么必要,只需要几个主的python虚拟环境则可,比如做web的,就创建pyweb虚拟环境,以后web相关的开发都使用该虚拟环境,这样方便管理。

    相关文章

      网友评论

        本文标题:选择了Anaconda下的conda工具作为python虚拟环境

        本文链接:https://www.haomeiwen.com/subject/thwtkqtx.html