注: 以下仅考虑 Python3
1. 配置国内镜像
1.1 pip 清华镜像
临时使用
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple <some-package>pip install -i https://mirrors.aliyun.com/pypi/simple/ <some-package>
设为默认
- 升级 pip 到最新的版本 (>=10.0.0) 后进行配置:
pip install pip -U# 清华源pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple# 阿里云源pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
1.2 Conda 清华镜像
参考链接 https://mirror.tuna.tsinghua.edu.cn/help/anaconda/
临时使用
conda install -c https://mirrors.tuna.tsinghua.edu.cn/anaconda <package_name>
设为默认
- Linux / Windows 系统: 在
~/.condarc中填入以下内容 清华源
channels:- defaultsshow_channel_urls: truechannel_alias: https://mirrors.tuna.tsinghua.edu.cn/anacondadefault_channels:- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2custom_channels:conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmsys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudbioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudmenpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudpytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloudsimpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
北外源
channels:- defaultsshow_channel_urls: truechannel_alias: https://mirrors.bfsu.edu.cn/anacondadefault_channels:- https://mirrors.bfsu.edu.cn/anaconda/pkgs/main- https://mirrors.bfsu.edu.cn/anaconda/pkgs/free- https://mirrors.bfsu.edu.cn/anaconda/pkgs/r- https://mirrors.bfsu.edu.cn/anaconda/pkgs/pro- https://mirrors.bfsu.edu.cn/anaconda/pkgs/msys2custom_channels:conda-forge: https://mirrors.bfsu.edu.cn/anaconda/cloudmsys2: https://mirrors.bfsu.edu.cn/anaconda/cloudbioconda: https://mirrors.bfsu.edu.cn/anaconda/cloudmenpo: https://mirrors.bfsu.edu.cn/anaconda/cloudpytorch: https://mirrors.bfsu.edu.cn/anaconda/cloudsimpleitk: https://mirrors.bfsu.edu.cn/anaconda/cloud
2. 创建虚拟环境
2.1 conda
首推的虚拟环境管理工具. 使用 conda 来安装包(而非 pip).
查找库的链接: https://anaconda.org/
注意 conda 源的python包和pip源的python包是不通用的, 有事可以混合安装, 但容易出现依赖错误.
(有时候涉及到一些C++库如cuda的时候, 或者一些只在pip中存在的库需要同时用两种工具安装包的时候, 可能会出现各种奇怪的依赖错误导致环境创建失败.)
# 创建 conda 环境conda create -n OpenCV-4.2.0-py3# 激活 conda 环境# For linuxsource activate OpenCV-4.2.0-py3# For windowsactivate OpenCV-4.2.0-py3# 在虚拟环境中安装 python 包conda install numpy# 虚拟环境中尽量不使用pip, 除非万不得已. pip和conda安装的包的兼容性很差.pip install numpy# 退出虚拟环境# For linuxsource deactivate# For windowsdeactivate
2.2 virtualenv
conda 安装环境不成功的第二选择.
virtualenv也是个python的第三方库, 用于管理虚拟环境, 但仍然使用pip来安装包.
# 需要先在默认环境中安装该库pip install virtualenv# 创建一个独立的 python 环境. 这样就在当前目录下创建了一个venv文件夹, 其中包含了一个最小的pythonvirtualenv venv# 也可以指定 python 版本virtualenv venv -p python3.6# 激活环境source venv/bin/activate
2.3 venv
(貌似不能指定 python版本, 所以暂不推荐, 这里只做记录)
以编译OpenCV为例, 创建一个 Python 虚拟环境:
# 创建虚拟环境所在的文件夹mkdir ~/venv; cd ~/venv# 创建名为 OpenCV-4.2.0-py3 的虚拟环境python3 -m venv OpenCV-4.2.0-py3# 以下可选, 为激活虚拟环境创建短命令# echo "# Virtual Environment Wrapper" >> ~/.bashrc# echo "alias workoncv-$cvVersion=\"source $cwd/OpenCV-$cvVersion-py3/bin/activate\"" >> ~/.bashrc# 或者直接激活source ~/venv/OpenCV-4.2.0-py3/bin/activate# 在虚拟环境中安装python包pip install numpy matplotlib# 退出虚拟环境deactivate
3. 环境的导出和安装
3.1 pip
# 导出库到文件pip freeze > requirements.txt# 从文件中安装库pip install -r requirements.txt
3.2 conda
# 导出库到文件conda list -e > requirements.txt# 从文件中安装库conda install --file requirements.txt
上面的安装方法仅限于常规安装. 有一些第三方channel和pip安装的库无法用此法安装, 只能导出. 为此, 我们可以选择导出整个环境.
# 导出环境到文件conda env export > env.yml# 从文件创建环境conda env create -f env.yml
3. Python 基本库
3.1 文档
- Python3-cookbook 中文译本
4. Python 第三方库
| 名称 | 安装方式 | 功能 |
|---|---|---|
| tqdm | conda install tqdm pip install tqdm |
提供进度条 |
| numpy | conda install numpy pip install numpy |
提供多维数组的计算, 底层用C语言实现, 保证了效率. 是大量科学计算库的依赖库. |
| matplotlib | conda install matplotlib pip install matplotlib |
提供二维和三维的绘图功能 |
| scipy | conda install scipy pip install scipy |
提供基于numpy的科学计算/数值计算功能 提供scipy.ndimage进行高维图像/张量处理 |
| pandas | conda install pandas pip install pandas |
结构化数据处理库, 基于Series和DataFrame两个数据结构进行数据处理. 适用于多类型结构化的数据, 可以与Excel的操作模式进行类比. |
| opencv | conda install opencv | OpenCV C++ 的 Python 包装 |
| skimage | conda install scikit-image | 用于图像处理的库, 部分功使用的是scipy.ndimage |
| tensorflow | pip install tensorflow pip install tensorflow-gpu |
一个基于静态图/动态图的用于机器学习/深度学习的分布式框架, Python包装, 依赖于 cudatoolkit和cudnn |
| pytorch | 见官网 | 一个基于动态图的用于机器学习/深度学习的框架, 依赖于 cudatoolkit 和 cudnn |
| cudatoolkit | conda install cudatoolkit | cuda 工具箱, 配合tensorflow/pytorch使用 |
| cudnn | conda install cudnn | cudnn 工具箱, 配合tensorflow/pytorch使用, 依赖于 cudatoolkit |
| sacred | pip install sacred | 实验工具, 用于配置, 组织, 记录和保证实验的可复现性. 鼓励实验的模块化和可配置性. 大量使用装饰器实现基本功能. |
| nibabel | pip install nibabel | 用于简单的医学图像读写 |
| simpleitk | conda install simpleitk -c simpleitk | 强大的医学图像处理库, ITK C++ 的 Python 包装. |
5. Python 编辑器/IDE
5.1 VSCode
链接: https://code.visualstudio.com/
介绍: 微软推出的多语言编辑器, 当然也支持 Python, 相比于大型 IDE, VSCode 是轻量级工具(但插件装多了也会变慢).
使用: 安装 VSCode, 从 VSCode 的插件市场安装 Python 插件
避坑: 避免使用默认的 python 语言解析服务器, 因为每次打开 VSCode 都要下载, 非常慢. 可以从插件市场安装微软提供的替代品 Pylance 插件.
5.2 PyCharm
链接: https://www.jetbrains.com/pycharm/
介绍: 功能强大的 Python IDE, 支持功能完善的智能感知, 并自动生成缺失的 API 接口文档. 支持远程ssh连接, 远程同步文件, 远程运行程序. 教育优惠可以免费试用专业版.
