人生苦短,我用Python,气象人需要利器!
对于气象常用的Python库有一个简要的整理,主要是方便自己一键式的在不同的平台上安装常用的库,过去,依赖于pip或conda install package_name 耗时耗力,且各个库的版本号可能会存在依赖关系的冲突,往往顾此失彼。后来深入使用conda,发现依赖于导出和导入开发环境yml文件能够解决这个问题。
依赖的Python分发版本主要是Ananconda,要是觉得这个包过于庞大了,可以精简一些,只安装Miniconda也行。这样,安装好后就能有一个基本的Python环境,在这里推荐Python3.6+以上的版本。而Python的编辑器推荐:Sublime Text3或者Pycharm,前者可以免费使用,非注册版本偶尔会提醒购买,但不影响使用,后者可以下载教育版,非商业用途,是免费使用。至于其他的还有VS Code,也是非常不错的。
最近,anaconda的高校镜像库基本都关停了(清华、中科大、南大),在此时间节点上国内的腾讯源还可以用。~/.condarc的配置文件可以添加一下:
channels:
- https://mirrors.cloud.tencent.com/anaconda/pkgs/main
- conda-forge
- https://mirrors.cloud.tencent.com/anaconda/cloud/conda-forge
- esri
- https://mirrors.cloud.tencent.com/anaconda/cloud/pytorch/
- https://mirrors.cloud.tencent.com/anaconda/cloud/menpo/
- https://mirrors.cloud.tencent.com/anaconda/cloud/bioconda/
- https://mirrors.cloud.tencent.com/anaconda/cloud/msys2/
- https://mirrors.cloud.tencent.com/anaconda/cloud/conda-forge/
- https://mirrors.cloud.tencent.com/anaconda/pkgs/main/
- https://mirrors.cloud.tencent.com/anaconda/pkgs/free/
- defaults
当Anaconda或者Miniconda安装好了,且在/.bashrc或/.bash_profile或~/.zshrc环境变量配置文件中添加了Python3.6+的路径了,就可以使用了,这也是一个最基本的Base开发环境。
主要是基于macOS这个平台为例来说一下(Win/Linux类似):
1.创建新的开发环境:
conda create --name <envname> python=<version> <optional dependencies>
例如,要创建一个atmpy的环境,Python开发环境要求是3.7版本:conda create -n atmpy python=3.7
若要在当前目录下创建,则使用
conda create -p <envname> python=<version> <optional dependencies>
2.查看目前拥有的开发环境:
conda info --envs
或者conda env list
3.激活开发环境
conda activate <envname>
上面的例子,conda activate atmpy
4.退出开发环境
conda deactivate
5.复制现有的开发环境
conda create --name <envname> --clone <existing_env>
例如,把已经创建atmpy开发环境进行复制:conda create --name atmpy_copy --clone atmpy
6.删除已经创建的开发环境
conda remove --name <envname> --all
例如,删除之前复制的开发环境,conda remove --name atmpy_copy --all
7.导出和导入开发环境的yml文件
导出conda env export > environment.yml
导入conda env create -f environment.yml
导出和导入都会自动帮你处理好pip中的依赖,如果是库出现了冲突,直接把版本号删除就行了,而pip中无法在线安装的,会提示警告,之后可以依据python setup.py install 手动安装。最后,yml文件可以利用name命名导入的环境,以及依赖的源,prefix指定新建的环境安装的位置。在此,我提供了两个自己常用的Python气象库yml文件。有了它,就可以一键式安装了,妈妈再也不担心也删了装,装了删。但最重要的是自己写的代码和数据集的有一个云端自动备份,且能够保存版本,这里推荐Dropbox,通过推荐新用户的办法可以扩展到18GB左右,存点核心数据和代码不成问题(需要科学上网来保证其正常使用,推荐Shadowsocks)。
人生苦短,我用Python
附件:YML文件
YML库一览
1 | name: atmpy |
有任何问题都欢迎交流探讨,共同学习进步!