拿到学姐一个项目的代码,然而环境不同,配置过程中一些感悟:
1、不要尝试自己配置,即从头开始conda create -n python36 python=3.6,因为许多的包精确到版本后几位的时候难以自己根据报错试出来。那么正确的做法是使用conda env export > environment.yml,然后conda env create -f environment.yml
2、不要尝试不同的平台迁移,由于anaconda的平台上对应不同系统的包版本有差异,所以请在同种系统间迁移,即win->win,Linux->Linux(之所以不说OSX是我怀疑OSX的包数目有些缺少)。否则报错多多,例如conda下载不了的需要用pip下载,而environment.yml里面的conda下载项格式还有差异,我因此写了个脚本处理,然而还是不能成功,所以请在同种系统间迁移。然而仅在同种系统间迁移也做不到成功,在solving environment很久后,还是报了很多错误。所以还是根据environment.yml自己创建环境,又回到了第一条?emm至少是根据environment.yml创建,不会又复杂的版本问题。
3、最好连软件都使用一样的,比如那个学姐用的pycharm,而我用的vscode,所以应该用pycharm才好,vscode在环境配置上十分复杂,而且我用vscode时在python版本的转换方面出了问题,无法从默认版本转换到虚拟python环境,浪费一堆时间。同时,在vscode的terminal上使用conda不起作用,使用activate python36也不起作用,使用完后python --version查看python版本还是默认版本。这应该和windows的shell有关系,从这一点来说,windows的终端远不如Linux和Mac的终端好用,连内置的vim都没有,也没有apt-get、brew等好用的下载器。同时它的环境变量的配置是通过GUI设置的,并非编辑某个配置文件,这令人感到困惑,也许有这样的方法,然而我并不知道。相比于vscode的python,pycharm做的更好,这让我体会到,vscode作为通用编辑器,并不是作为一个IDE存在的,你不能要求它做到所有语言的编译,尽管vscode已经通过众多的插件基本实现了这一点,然而环境配置和一些莫名奇妙的错误还是让人感到头大。
-------------------------------------------------------------------------------------更新----------------------------------------------------------------------------------------
隔一段时间看自己的博客都觉得真蠢。。。。。。。。
这次由于实验室的机器好几个人一起用,我暂时不用深度学习,浪费了一块1080Ti,所以又来尝试配置环境
这次是先conda create -n python365 python=3.6.5,然后根据代码报错,查看environment.yml中对应包的版本,然后挨个conda install/pip install弄好的,工作的那一刻我都不相信自己的眼睛。
这次与上次的不同在于这次的python=3.6.5,上次是python=3.6,估计conda自动给我装了3.6中最新的版本。。。。。有被自己蠢死