Anaconda开发环境配置
original boy man
⽬录
1. 简介
Anaconda 是⼀个基于 Python 的数据分析和科学计算平台,⽀持 Linux、MacOS 和 Windows,集成了包括 Numpy、Pandas、Matplotlib 在内的众多优秀类库。从某种程度上讲,Anaconda 是 venv 和 pip 的替代品,解决了虚拟环境和包管理两⼤难题,并且在实现⽅式上更加优秀。
Anaconda 提供的命令包括 python、ipython、conda、jupyter netebook 等。
python,基础的交互式开发环境。Anaconda 已经包含了 Python 基础环境,不需要独⽴安装 Python。同时,借助虚拟环境技术,Anaconda 很好地解决了多版本共存问题;
ipython,增强的交互式开发环境,提供变量补全、⾃动缩进和魔法命令等扩展功能。在⽇常使⽤中,很少直接使⽤ python 或者ipython,它们更多的是作为实现更⾼级功能的基本组件;
conda,Anaconda 配置命令,主要⽤于创建和管理虚拟环境、安装和卸载第三⽅类库;
jupyter netebook,基于⽹页的多语⾔交互式开发平台,⽬前⽀持超过40种编程语⾔,可以⽤于编写代码、标记⽂本和数据可视化等。Jupyter Notebook 中的 Python 内核使⽤的是 IPython。
此外,Anaconda 在 Windows 平台上还提供 Navigator、Prompt 和 Spyder 等图形开发⼯具。
Navigator,conda 的图形化实现,主要⽤于创建和管理虚拟环境、安装和卸载第三⽅类库;
Prompt,命令⾏终端,相当于执⾏ activate <env_name> 后的命令提⽰符;
Spyder,⾯向科学计算的集成开发环境。
2. 安装部署
2.1 Windows 平台
2.1.1 安装 OpenSSL 软件包
如果未安装
,在更新 Anaconda 时会报 “Can’t connect to HTTPS URL because the SSL module is not” 错误。
2.1.2 设置环境变量
⼀般情况下,不建议将 Anaconda 设置为系统环境变量。根据虚拟环境的设计思想,在需要时激活特定环境,⽽不是绑定默认环境。
Linux 平台上,任何情况下都不要直接将 Anaconda 相关路径加⼊环境变量,否则会与系统⾃带的 Python 环境冲突。系统⾃带的Python ⽤于运⾏ yum、apt-get 等基础组件,使⽤版本相对⽼旧,替换为新版本容易出现兼容性问题。因此,推荐使⽤ source activate <env_name> 激活虚拟环境。
Windows 平台上,设置环境变量仅仅出于执⾏ conda、jupyter notebook 等管理命令的需要,⽽不能直接⽤于开发。在未使⽤ activate <env_name> 激活虚拟环境的情况下,纵然能够执⾏ python 等命令,开发环境也是不完整的(缺少类库路径),会提⽰ “This Python interpreter is in a conda environment, but the environment has not been activated. Libraries may fail to load.” 警告。因此,仍然推荐使⽤ activate <env_name> 激活虚拟环境。
事实上,我们可以在 Prompt 终端下进⾏全部操作,⽽不必使⽤ Windows ⾃带的命令提⽰符。
set PATH=%PATH%;C:\Softwares\Anaconda;C:\Softwares\Anaconda\Scripts
2.1.3 配置国内镜像
修改⽤户⽬录(C:\Users\moonspirit)下的 .condarc ⽂件,配置国内镜像,推荐使⽤ 。
Windows ⽤户可能⽆法直接创建名为 .condarc 的⽂件,可以执⾏ conda config --set show_channel_urls yes ⽣成该⽂件,再进⾏修改。
channels:
- defaults
show_channel_urls: true
channel_alias: mirrors.tuna.tsinghua.edu/anaconda
default_channels:
- mirrors.tuna.tsinghua.edu/anaconda/pkgs/main
- mirrors.tuna.tsinghua.edu/anaconda/pkgs/free
- mirrors.tuna.tsinghua.edu/anaconda/pkgs/r
- mirrors.tuna.tsinghua.edu/anaconda/pkgs/pro
- mirrors.tuna.tsinghua.edu/anaconda/pkgs/msys2
custom_channels:
conda-forge: mirrors.tuna.tsinghua.edu/anaconda/cloud
msys2: mirrors.tuna.tsinghua.edu/anaconda/cloud
bioconda: mirrors.tuna.tsinghua.edu/anaconda/cloud国安永远争第一
menpo: mirrors.tuna.tsinghua.edu/anaconda/cloud
pytorch: mirrors.tuna.tsinghua.edu/anaconda/cloud
simpleitk: mirrors.tuna.tsinghua.edu/anaconda/cloud
3. 操作指南
3.1 虚拟环境管理
conda update -n base conda          # conda ⾃更新
conda create -n python2 python=2.7  # 创建虚拟环境
conda remove -n <env_name> --all    # 删除虚拟环境陈好电影
conda env list                      # 列出已有环境
conda activate <env_name># 切换到指定环境(Windows)
conda deactivate                    # 退出当前环境(Windows)
source activate <env_name># 切换到指定环境(Linux)
source deactivate                  # 退出当前环境(Linux)
3.2 第三⽅类库管理
pip install snownlp          # 使⽤ pip 安装第三⽅类库(过时)
conda install beautifulsoup4  # 使⽤ conda 安装第三⽅类库(推荐)
陈小纭前男友歌手张睿conda update --all            # 更新所有的第三⽅类库
conda/pip list                # 列出已安装的第三⽅类库
conda install numpy pandas matplotlib scipy scikit-learn scikit-image statsmodels beautifulsoup4 lxml xlrd sphinx openpyxl
conda install -c conda-forge jupyter_contrib_nbextensions
conda install -c main pandas-datareader
王靓雅
3.3 Jupyter 内核管理
Jupyter Notebook 与内核交互,内核是编程语⾔基于交互式计算协议的实现。安装对应编程语⾔的 ipykernel,即可实现集成开发。jupyter kernelspec list      # 查看所有内核
jupyter kernelspec install# 安装内核
jupyter kernelspec remove    # 删除内核
3.4 修改 Jupyter Notebook 启动路径
Jupyter Notebook 启动路径就是运⾏该命令的⽬录位置,默认是 C:\Users\⽤户名。当更改盘符或者路径时,Jupyter Notebook 启动路径随之改变。
背对背拥抱右击查看可执⾏⽂件的属性,删除"⽬标"⾥的"%USERPROFILE%/",同时删除"起始位置"⾥的全部内容。
运⾏ jupyter notebook --generate-config,在 C:\Users\⽤户名\.jupyter 下⽣成 jupyter_notebook_config.py,修改以下内容:
c.NotebookApp.file_to_run = r'C:\Users\017494564\Documents\⼯作\Workspace\Jupyter'
3.5 环境离线迁移
复制 $HOME/anancoda/envs/myenv 到⽬标位置,执⾏ conda activate <env_name> 加载环境。
4. 集成开发
4.1 Python 内核
conda activate python2
conda install backports.functools_lru_cache ipykernel
conda install tornado==4.5.3
python -m ipykernel install --user --name python2 --display-name "Python 2"
4.2 R 内核
在 Prompt 交互终端中,输⼊ R,切换到 R 命令⾏(需要提前将 R 命令加⼊到环境变量)。
install.packages(c('repr', 'IRdisplay', 'evaluate', 'crayon', 'pbdZMQ', 'devtools', 'uuid', 'digest'))
install.packages('IRkernel')
IRkernel::installspec(user = FALSE)
4.3 SQL 集成
4.3.1 安装部署
pip install ipython-sql
conda install pymysql
4.3.2 操作指南
%load_ext sql  # 加载模块
%sql mysql+pymysql://root:password@localhost/dbname  # 连接数据库
data = %sql select * from user  # 导⼊查询结果