为什么是Python
Python是一种面向对象的解释型计算机程序设计语言。
Python简单易用,功能强大,应用领域广泛,遍及人工智能、科学计算、机器学习、网络爬虫、大数据及云计算等。
一个语言能够这么广泛应用的前提,就是因为Python具有数量庞大且功能相对完善的标准库和第三方库。
然而,正是由于库的数量庞大,对于管理这些库以及对库作及时的维护成为既重要但复杂度又高的事情。
例如,在实际项目开发中,我们通常会根据自己的需求去下载各种相应的框架库,如numpy,requests等,但是可能每个项目使用的框架库并不一样,或使用框架的版本不一样,这样需要我们根据需求不断的更新或卸载相应的库。
直接在系统默认环境安装会让我们的开发环境和项目造成很多不必要的麻烦,管理也相当混乱。
这时候,我们需要一个独立的环境,就是常说的Python虚拟环境解决方案。
虚拟环境提供了一个独立的空间,独立的环境,不同的项目可以在各自的环境中调用第三方工具,使用虚拟环境中的解释器。同时开发多个项目时,更加方便。
python的虚拟环境有pipenv, virtualenv, conda(Anaconda)。
这里我们选用的是Anaconda方案,下文会有具体介绍。
python官网:https://www.python.org/
python英文文档:https://docs.python.org/3/
python中文文档:https://docs.python.org/zh-cn/3/
Anaconda
介绍
Anaconda就是可以便捷获取包且对包能够进行管理,同时对环境可以统一管理的发行版本。
Anaconda包含了conda、Python在内的超过180个科学包及其依赖项。
简单来说,Anaconda包含了一堆常用的包,Anaconda提供了一套完整的虚拟环境解决方案,Anaconda提供了完善的包管理方案。
Anaconda官网:https://www.anaconda.com/
Anaconda英文文档:https://docs.anaconda.com/
Anaconda中文文档:https://anaconda.org.cn/
Anaconda是一个软件发行版,使用了conda进行包和环境管理。
后文说的很多命令,都是conda开头,在这里做下简单的说明。
Anaconda安装
下载地址:https://www.anaconda.com/products/distribution#macos
下载适合的环境,按照安装手册,一步步安装就可以了。
安装器若提示"Do you wish the installer to prepend the Anaconda install location to PATH in your .bash_profile?"
你希望安装器添加Anaconda安装路径在.bash_profile文件中吗?
建议输入“yes”。
验证安装结果
打开终端,看到命令行最前面是否有(base),这是Anaconda的默认安装环境:
或者输入命令 conda list 看一下环境里面的包:
安装后,可以使用conda update conda进行更新:
Anaconda新建环境
conda create -n env_name,其中 -n env_name 指定了环境的名字:
切换到创建好的环境:
环境相关的命令
创建虚拟环境
conda create -n xxx
进入虚拟环境
conda activate xxx
退出虚拟环境
conda deactivate
删除虚拟环境
conda remove --name xxx --all
包安装
一般采用conda install 或者 pip install 安装包,这两个命令的区别在于:
pip
是用来安装python包的,安装的是python wheel或者源代码的包。从源码安装的时候需要有编译器的支持,pip也不会去支持python语言之外的依赖项。
conda
是用来安装conda package,虽然大部分conda包是python的,但它支持了不少非python语言写的依赖项,比如mkl cuda这种c c++写的包。然后,conda安装的都是编译好的二进制包,不需要你自己编译。所以,pip有时候系统环境没有某个编译器可能会失败,conda不会。
conda的优势:包之间严格的依赖检查;是一个超越Python的环境管理器。
推荐使用conda来安装包,如果安装失败,再尝试用pip进行安装。
Anaconda环境复制
很多时候,我们新建一个项目,或者一个项目的新版本,都基于之前项目使用的虚拟环境创建,所以需要进行环境的复制操作。
本地环境复制
conda create -n 新环境名 --clone 旧环境名
conda create -n BBB --clone AAA
非本地环境复制
- 首先激活环境: conda activate xxx
- 生成yaml文件: conda env export > xxx.yaml
- 复制到新的系统下后:执行 conda env create -f xxx.yaml
pip安装包的非本地同步
- 导出pip安装的包: pip freeze > requirements.txt
- 将requirements.txt 文件同步到新的机器或者环境中
- pip导入包:pip install -r requirements.txt
Conda其它常用命令
- conda --version( 验证conda已被安装)
- conda update conda(更新conda至最新版本)
- conda list -n <env_name> (查看指定环境下已安装包列表)
- conda list(查看当前环境下已安装包列表)
- conda env list(查看所有环境列表)
- conda --version (查看conda版本,验证是否安装)
- conda update conda (更新至最新版本,也会更新其它相关包)
- conda update --all (更新所有包)
- conda update package_name (更新指定的包)
PyCharm
介绍
PyCharm是由大名鼎鼎的JetBrains打造的一款Python IDE。
带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。
对于新人来说,推荐使用IDE进行开发,可以在学习过程中聚焦与核心问题,而不是被环境配置以及各种命令工具影响。
PyCharm自带对Anaconda(conda)环境的支持。
PyCharm有社区版本和专业版本,这里主要介绍社区版本,社区版本是免费的。
PyCharm下载和安装
PyCharm官网:https://www.jetbrains.com/pycharm/
PyCharm下载地址:https://www.jetbrains.com/pycharm/download/ 选择Community版本即可。
PyCharm工程建立:使用conda
打开一个工程的时候,如果你的本地已经安装好了Anaconda,就会看到conda选项:
选择以后,PyCharm会为这个新的工程,创建一个全新的虚拟环境,环境名称就是工程名称。
【作者信息】
QuantGalaxy
<quantgalaxy@outlook.com>
欢迎交流
科技改变生活