镜像准备
将镜像源替换为国内镜像,可大幅度提升python包的下载速度
- pip国内镜像
- 在用户文件夹下新建pip文件夹,在pip文件夹中新建txt文件,将下面代码复制进去,并重命名为
pip.ini
- 在用户文件夹下新建pip文件夹,在pip文件夹中新建txt文件,将下面代码复制进去,并重命名为
[global]
index-url = https://pypi.douban.com/simple
[install]
trusted-host=pypi.douban.com
timeout = 150
- conda国内镜像
- 直接在用户文件夹下新建txt文件,将下面代码复制进去,并重命名为
.condarc
- 直接在用户文件夹下新建txt文件,将下面代码复制进去,并重命名为
channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
show_channel_urls: true
always_yes: true
ssl_verify: true
anaconda虚拟环境管理技巧
- 查看环境
conda env list
- 查看所在环境中的包
conda list
- 安装/卸载包
conda install 包名称 # conda找不到时 可以用pip install
conda uninstall 包名称 # 卸载包时也会卸载对应的依赖包
- 新建虚拟环境
conda create -n 环境名 python=3.7.6 # -n是指name, 也可用--name,python为可选项
- 克隆虚拟环境
conda create -n 新环境名 --clone 原环境名
- 删除虚拟环境
conda remove -n 环境名 --all
- 导出虚拟环境
activate 环境名
conda env export > 文件名.yaml
- 导入虚拟环境
conda env create -f 文件名.yaml
安装geopandas
本文的按装方法是直接安装geopandas的开发环境,这样避免了直接通过conda install geopandas
导致部分包不兼容的问题,避免了没必要的报错。
- 将下面代码保存为
environment.yml
文件
name: geopandas-dev
channels:
- https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
- https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
- https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
- https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
- https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
- https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
dependencies:
- python==3.8.2
# required
- fiona>=1.8.21
- pandas>=1.3.0
- pyproj>=2.6.1
- shapely>=1.8.0
# geodatabase access
- psycopg2>=2.5.1
- SQLAlchemy>=1.3.12
# geocoding
- geopy
# plotting
- descartes>=1.0
- matplotlib>=3.2.0
# spatial access methods
- rtree>=0.9.7
- 通过本地yml文件创建环境,文件夹中的
environment.yml
文件应该是开发环境,安装出来的环境名称为geopandas-dev
,如果出现HTTPERROR,右键-打开方式-记事本(或任何一种编辑软件如notepad++),将channels部分更改为上面的conda国内镜像
conda env create -f environment.yml
- 切换到安装好的环境
geopandas-dev
并安装一下geopandas(安装的环境是开发用的环境,是没有geopandas的,需要手动安装一下)
activate geopandas-dev
# conda install geopandas
pip install geopandas==0.10.2
- 安装
ipykernel
(用于在jupyter中切换环境)
python3.8及以下可安装
nb_conda
conda install ipykernel
- 在base环境安装
ipykernel
(防止从Anaconda的快捷方式中启动jupyter notebook时不能切换环境)
python3.8及以下可安装
nb_conda
activate base
conda install ipykernel
- 克隆一份环境,原来的名字太长了,改个短一点的叫做
gs
,环境是没有rename的功能的,想改名称只能克隆一份,然后把原来的删掉
conda create -n gs --clone geopandas-dev
- 激活/退出环境,环境之间切换是不用退出的,直接激活另一个就可以,所以退出环境的功能基本上用不着
activete gs
conda deactivate
虚拟环境的使用
在命令行里使用虚拟环境
activate gs # 激活虚拟环境gs
python xxxx.py
bat文件通过conda环境运行
- bat文件运行脚本内容:
ECHO Running Admin shell
call C:\ProgramData\Anaconda3\Scripts\activate.bat gs
python XXXX.py # 如果在运行后不想自动关闭窗口加上参数 -i 即:`python -i xxxx.py`
上面的三行分别为:
- 启动shell
- 切换到名为‘gs’的环境,注:写正确anaconda文件夹中的activate.bat的路径
- 运行 XXXX.py的python脚本
在pycharm使用conda环境
conda env list
可以查看环境所在的位置
λ conda env list
#conda environments:
base * C:\ProgramData\Anaconda3
geopandas-dev C:\ProgramData\Anaconda3\envs\geopandas-dev
gis C:\ProgramData\Anaconda3\envs\gis
gs C:\ProgramData\Anaconda3\envs\gs
py36 C:\ProgramData\Anaconda3\envs\py36
打开Pycharm的设置页面:
file–setting–project–齿轮–add(如图所示)
conda environment – existing environment – 三个点
输入环境路径,选择python.exe
在jupyter里使用conda环境
- 在jupyter notebook中切换虚拟环境
切换到要使用的虚拟环境,并安装ipykernel
,该操作在每个环境里只需要运行一次
python3.8及以下可安装
nb_conda
activate 环境名
conda install ipykernel
- 在jupyter新建脚本时即可选择环境:
- 代码中也可以切换环境:
- 小技巧:通过桌面图标运行jupyter notebook
新建文本文件,保存以下代码:
ECHO Running Admin shell
start jupyter notebook
将后缀改为.bat
,双击运行即可
如果base环境有问题,要通过虚拟环境来运行,可以加一行
ECHO Running Admin shell
call C:\ProgramData\Anaconda3\Scripts\activate.bat gs
start jupyter notebook
.
.
.
.
.
.
.
.
.
.
未完待续