Python是一种面向对象的解释型计算机程序设计语言,其使用,具有跨平台的特点,可以在Linux、macOS以及Windows系统中搭建环境并使用,其编写的代码在不同平台上运行时,几乎不需要做较大的改动,使用者无不受益于它的便捷性。
此外,Python的强大之处在于它的应用领域范围之广,遍及人工智能、科学计算、Web开发、系统运维、大数据及云计算、金融、游戏开发等。实现其强大功能的前提,就是Python具有数量庞大且功能相对完善的标准库和第三方库。通过对库的引用,能够实现对不同领域业务的开发。然而,正是由于库的数量庞大,对于管理这些库以及对库作及时的维护成为既重要但复杂度又高的事情。
Anaconda(官方网站)就是可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本。Anaconda包含了conda、Python在内的超过180个科学包及其依赖项。
Anaconda具有如下特点:
其特点的实现主要基于Anaconda拥有的:
如果日常工作或学习并不必要使用1,000多个库,那么可以考虑安装Miniconda(图形界面下载及命令行安装请戳),这里不过多介绍Miniconda的安装及使用。
① Anaconda
② conda
用途:
如果你需要的包要求不同版本的Python,你无需切换到不同的环境,因为conda同样是一个环境管理器。仅需要几条命令,你可以创建一个完全独立的环境来运行不同的Python版本,同时继续在你常规的环境中使用你常用的Python版本。——conda官方网站
③ pip
pip名称的由来:pip采用的是递归缩写进行命名的。其名字被普遍认为来源于2处:
“Pip installs Packages”(“pip安装包”)④ virtualenv
virtualenv:用于创建一个独立的Python环境的工具。
解决问题:
virtualenv将会为它自己的安装目录创建一个环境,这并不与其他virtualenv环境共享库;同时也可以选择性地不连接已安装的全局库。
⑤ pip 与 conda 比较
→ 依赖项检查
→ 环境管理
→ 对系统自带Python的影响
→ 适用语言
⑥ conda与pip、virtualenv的关系
Anaconda可以在以下系统平台中安装和使用:
① 图形界面安装
“Anaconda-Navigator”中已经包含“Jupyter Notebook”、“Jupyterlab”、“Qtconsole”和“Spyder”。(图中的“Rstudio”是我后来安装的,但它默认出现在“Anaconda-Navigator”的启动界面,只需要点击“Install”便可安装。)
② 命令行安装
完成下载之后,在mac的Launchpad中找到“其他”并打开“终端”。
安装Python 3.6:bash ~/Downloads/Anaconda3-5.0.1-MacOSX-x86_64.sh首词bash也需要输入,无论是否用的Bash shell。
如果你的下载路径是自定义的,那么把该步骤路径中的~/Downloads替换成你自己的下载路径。
如果你将第1步下载的.sh文件重命名了,那么把该步骤路径中的Anaconda3-5.0.1-MacOSX-x86_64.sh或Anaconda2-5.0.1-MacOSX-x86_64.sh替换成你重命名后的文件名。
路径/home/
如果输入“no”,则需要手动添加路径。添加export PATH="/
当看到“Thank you for installing Anaconda!”则说明已经成功完成安装。
关闭终端,然后再打开终端以使安装后的Anaconda启动。
验证安装结果。可选用以下任意一种方法:
在终端中输入命令condal list,如果Anaconda被成功安装,则会显示已经安装的包名和版本号。
在终端中输入python。这条命令将会启动Python交互界面,如果Anaconda被成功安装并且可以运行,则将会在Python版本号的右边显示“Anaconda custom (64-bit)”。退出Python交互界面则输入exit()或quit()即可。
在终端中输入anaconda-navigator。如果Anaconda被成功安装,则Anaconda Navigator的图形界面将会被启动。
如果在安装过程中遇到任何问题,那么暂时地关闭杀毒软件,并在安装程序完成之后再打开。
如果在安装时选择了“为所有用户安装”,则卸载Anaconda然后重新安装,只为“我这个用户”安装。
目标路径中不能含有空格,同时不能是“unicode”编码。
除非被要求以管理员权限安装,否则不要以管理员身份安装。
在“Advanced Installation Options”中不要勾选“Add Anaconda to my PATH environment variable.”(“添加Anaconda至我的环境变量。”)。因为如果勾选,则将会影响其他程序的使用。如果使用Anaconda,则通过打开Anaconda Navigator或者在开始菜单中的“Anaconda Prompt”(类似macOS中的“终端”)中进行使用。
“开始 → Anaconda3(64-bit)→ Anaconda Navigator”,若可以成功启动Anaconda Navigator则说明安装成功。
“开始 → Anaconda3(64-bit)→ 右键点击Anaconda Prompt → 以管理员身份运行”,在Anaconda Prompt中输入conda list,可以查看已经安装的包名和版本号。若结果可以正常显示,则说明安装成功。
3. Linux系统安装Anaconda
前往官方下载页面下载。有两个版本可供选择:Python 3.6 和 Python 2.7。
启动终端,在终端中输入命令md5sum /path/filename或sha256sum /path/filename
Python 3.6:bash ~/Downloads/Anaconda3-5.0.1-Linux-x86_64.sh
Python 2.7:bash ~/Downloads/Anaconda2-5.0.1-Linux-x86_64.sh
首词bash也需要输入,无论是否用的Bash shell。
如果你的下载路径是自定义的,那么把该步骤路径中的~/Downloads替换成你自己的下载路径。
除非被要求使用root权限,否则均选择“Install Anaconda as a user”。
安装过程中,看到提示“In order to continue the installation process, please review the license agreement.”(“请浏览许可证协议以便继续安装。”),点击“Enter”查看“许可证协议”。
在“许可证协议”界面将屏幕滚动至底,输入“yes”表示同意许可证协议内容。然后进行下一步。
安装过程中,提示“Press Enter to accept the default install location, CTRL-C to cancel the installation or specify an alternate installation directory.”(“按回车键确认安装路径,按'CTRL-C'取消安装或者指定安装目录。”)如果接受默认安装路径,则会显示“PREFIX=/home/
路径/home/
如果输入“no”,则需要手动添加路径,否则conda将无法正常运行。
当看到“Thank you for installing Anaconda<2 or 3>!”则说明已经成功完成安装。
关闭终端,然后再打开终端以使安装后的Anaconda启动。或者直接在终端中输入source ~/.bashrc也可完成启动。
验证安装结果。可选用以下任意一种方法:
在终端中输入命令condal list,如果Anaconda被成功安装,则会显示已经安装的包名和版本号。
在终端中输入python。这条命令将会启动Python交互界面,如果Anaconda被成功安装并且可以运行,则将会在Python版本号的右边显示“Anaconda custom (64-bit)”。退出Python交互界面则输入exit()或quit()即可。
在终端中输入anaconda-navigator。如果Anaconda被成功安装,则Anaconda Navigator将会被启动。
接下来均是以命令行模式进行介绍,Windows用户请打开“Anaconda Prompt”;macOS和Linux用户请打开“Terminal”(“终端”)进行操作。
conda --version
终端上将会以conda 版本号的形式显示当前安装conda的版本号。如:conda 3.11.0
conda update conda
执行命令后,conda将会对版本进行比较并列出可以升级的版本。同时,也会告知用户其他相关包也会升级到相应版本。
当较新的版本可以用于升级时,终端会显示Proceed ([y]/n)?,此时输入y即可进行升级。
conda --help 或 conda -h
① Linux 或 macOS
rm -rf ~/anaconda2 或 rm -rf ~/anaconda3
即删除Anaconda的安装目录。根据安装的Anaconda版本选择相应的卸载命令。
② Windows
控制面板 → 添加或删除程序 → 选择“Python X.X (Anaconda)” → 点击“删除程序”Python X.X:即Python的版本,如:Python 3.6。
Windows 10的删除有所不同。
接下来均是以命令行模式进行介绍,Windows用户请打开“Anaconda Prompt”;macOS和Linux用户请打开“Terminal”(“终端”)进行操作。
conda create --name
注意:
如果要安装指定的版本号,则只需要在包名后面以=和版本号的形式执行。如:conda create --name python2 python=2.7,即创建一个名为“python2”的环境,环境中安装版本为2.7的python。
如果要在新创建的环境中创建多个包,则直接在
--name同样可以替换为-n。
提示:默认情况下,新创建的环境将会被保存在/Users/
① Linux 或 macOS
source activate
② Windows
activate
③ 提示
如果创建环境后安装Python时没有指定Python的版本,那么将会安装与Anaconda版本相同的Python版本,即如果安装Anaconda第2版,则会自动安装Python 2.x;如果安装Anaconda第3版,则会自动安装Python 3.x。
当成功切换环境之后,在该行行首将以“(env_name)”或“[env_name]”开头。其中,“env_name”为切换到的环境名。如:在macOS系统中执行source active python2,即切换至名为“python2”的环境,则行首将会以(python2)开头。
① Linux 或 macOS
source deactivate
② Windows
deactivate
③ 提示
当执行退出当前环境,回到root环境命令后,原本行首以“(env_name)”或“[env_name]”开头的字符将不再显示。
conda info --envs 或 conda info -e 或 conda env list
例如:
结果中星号“*”所在行即为当前所在环境。macOS系统中默认创建的环境名为“base”。
conda create --name--clone
如:conda create --name py2 --clone python2,即为克隆名为“python2”的环境,克隆后的新环境名为“py2”。此时,环境中将同时存在“python2”和“py2”环境,且两个环境的配置相同。
conda remove --name--all
① 精确查找
conda search --full-name
注意:
--full-name为精确查找的参数。
例如:conda search --full-name python即查找全名为“python”的包有哪些版本可供安装。
② 模糊查找
conda search
注意:
例如:conda search py即查找含有“py”字段的包,有哪些版本可供安装。
conda list
执行上述命令后将在终端显示当前环境已安装包的包名及其版本号。
① 在指定环境中安装包
conda install --name
注意:
例如:conda install --name python2 pandas即在名为“python2”的环境中安装pandas包。
② 在当前环境中安装包
conda install
注意:
执行命令后在当前环境中安装包。
例如:conda install pandas即在当前环境中安装pandas包。
③ 使用pip安装包
→ 使用场景
当使用conda install无法进行安装时,可以使用pip进行安装。例如:see包。
→ 命令
pip install
注意:
如:pip install see即安装see包。
→ 注意
pip只是包管理器,无法对环境进行管理。因此如果想在指定环境中使用pip进行安装包,则需要先切换到指定环境中,再使用pip命令安装包。
pip无法更新python,因为pip并不将python视为包。
pip可以安装一些conda无法安装的包;conda也可以安装一些pip无法安装的包。因此当使用一种命令无法安装包时,可以尝试用另一种命令。
④ 从Anaconda.org安装包
→ 使用场景
当使用conda install无法进行安装时,可以考虑从Anaconda.org中获取安装包的命令,并进行安装。
→ 注意
从Anaconda.org安装包时,无需注册。
在当前环境中安装来自于Anaconda.org的包时,需要通过输入要安装的包在Anaconda.org中的路径作为获取途径(channel)。查询路径的方式如下:
在浏览器中输入:http://anaconda.org,或直接点击Anaconda.org
在新页面“Anaconda Cloud”的上方搜索框中输入要安装的包名,然后点击右边“放大镜”标志。
搜索结果中有数以千计的包可供选择,此时点击“Downloads”可根据下载量进行排序,最上面的为下载最多的包。(图中以搜索bottleneck包为例)
选择满足需求的包或下载量最多的包,点击包名。
复制“To install this package with conda run:”下方的命令,并粘贴在终端中执行。
完成安装。
① 卸载指定环境中的包
conda remove --name
注意:
例如:conda remove --name python2 pandas即卸载名为“python2”中的pandas包。
② 卸载当前环境中的包
conda remove
注意:
执行命令后即在当前环境中卸载指定包。
例如:conda remove pandas即在当前环境中卸载pandas包。
① 更新所有包
conda update --all 或 conda upgrade --all
② 更新指定包
conda update或 conda upgrade
更新多个指定包,则包名以空格隔开,向后排列。如:conda update pandas numpy matplotlib即更新pandas、numpy、matplotlib包。