Python开发环境搭建一、Python简介Python语言简介

Python作为一门解释性的程序开发语言(脚本语言),因其简单易学,而且功能强大。在2019年3月份,编程语言流行指数PYPL排行榜中,Python已经超越Java成为最受欢迎的开发语言。

Python在下列几大主流应用领域都广受好评:

· 网络编程,Web应用开发,网络爬虫

· 图形界面开发(GUI开发),游戏开发

· 科学计算,数据分析,机器学习,人工智能

· 系统运维,自动化测试,等等。

Python开发环境

Python开发环境搭建,一般包含两个环境:一个是Python的核心程序,一个是开发的环境。

python 如何搭建环境(Python开发环境搭建)(1)

1) Python核心程序

Python核心程序,为Python工作必须的模块功能,主要包含:

a) 内置库:不需要单独下载安装,也不需要导入,可直接使用

b) 标准库:不需要单独下载安装,但需要用import导入

c) 解释器:Python代码的解释执行器,如CPython/IPython等

详细解释器内容请参考后续小节。

2) 开发环境,

开发环境,主要提供Python代码编写,管理,调试等功能,但需要调用Python核心程序来执行、调试代码。

常用的开发环境有两大类:

a) 增强型的交互式开发程序,比如说jupyter notebook等,是在IPython解释器上的增强,支持语法高亮、代码智能提示等等功能。

b) 集成开发环境,常见的IDE有Pycharm, VSCode, Sublime Text,…等等。

二、核心程序安装

安装Python核心程序有两种方式:纯净安装和打包安装。

1、纯净安装

纯净安装,指的是直接安装官方提供的Python核心程序(包括解释器、核心程序、标准模块库等)。

然后再根据自己的需求,下载并安装其它的扩展库。由于Python中涉及到大量扩展库,以及扩展库的不同的版本。

采用纯净安装的话,好处是:可以根据自己的需要来有选择性地安装各种扩展库;缺点是:需要自行安装,比较麻烦。

2、打包安装

最常见的打包安装,就是下载Anaconda安装包进行安装。

Anaconda是Python的科学计算发行版,不但已经包含了Python核心程序,而且还包含众多的流行的科学、数学、工程、数据分析的Python扩展包等等。

打包安装的话,好处是:这样可以免去自行安装众多扩展库的麻烦,Anaconda还会自行考虑各种扩展库的版本的兼容性。缺点是:安装了大量的可能用不到的扩展库,占用硬盘空间。

显然,一般的初学者可直接选择Anaconda包安装;如果想要逐步弄明白Python的逻辑框架,也可以选择纯净安装。

python 如何搭建环境(Python开发环境搭建)(2)

3、安装步骤

实际上,纯净安装和打包安装是可以同时共存于你的电脑中,不会产生任何冲突,因为默认会安装在不同的目录下的。

纯净安装步骤

下载Python安装包

去官方网站,基于操作系统(Windows或MacOS等),下载合适的Python安装包。

如下图所示,下载Windows系统的Python 3.7.4版本,安装程序包名称为python-3.7.4-amd64.exe。

python 如何搭建环境(Python开发环境搭建)(3)

安装Python程序

1) 双击安装包python-3.7.4-amd64.exe运行

2) 考虑到后面方便性,请勾选Add Python3.7 to PATH,for all users(需要管理员权限),其他的尽量选择默认安装即可。

python 如何搭建环境(Python开发环境搭建)(4)

python 如何搭建环境(Python开发环境搭建)(5)

一般,Python默认安装在用户的应用数据目录下:

C:\Users\xxxx\AppData\Local\Programs\Python\Python37

随着Python一起安装的,除了Python解释器外,还有IDLE交互界面,以及Python相关文档等。

检验和升级

要想验证一下Python是否安装好了,可以进入命令行界面进行验证。

1) 从开始菜单启动命令提示符

2) 查看扩展包

pip程序,是官方的Python包管理程序,输入命令pip list,查看随着Python一起安装的扩展包。由于是纯净安装,看到的扩展包只有pip和setuptools。

还发现pip提示pip版本有新版本,因此接下来可以根据提示升级pip版本。

3) 升级pip包管理程序

输入命令python -m pip install --upgrade pip,以升级pip版本(19.0.319.2.3)。

然后,再根据需要安装其它的扩展包,详情请参考其他小节。

python 如何搭建环境(Python开发环境搭建)(6)

打包安装步骤

下载Anaconda安装包

去官方网站,基于操作系统(Windows或MacOS等),下载合适的Anaconda3安装包。如下图所示,下载Windows系统的包含Python 3.7(64-bit)的Anaconda 2019.07版本,安装程序包名称为Anaconda3-2019.07-Windows-x86_64.exe。

python 如何搭建环境(Python开发环境搭建)(7)

安装Anaconda程序

1) 双击安装包Anaconda3-2019.07-Windows-x86_64.exe运行

2) 考虑到后面方便性,请勾选for all users(需要管理员权限),其他的尽量选择默认安装即可。

python 如何搭建环境(Python开发环境搭建)(8)

python 如何搭建环境(Python开发环境搭建)(9)

一般Anaconda默认安装的目录是:C:\ProgramData\Anaconda3

随Python核心包一起安装的,还有一批应用程序:

· Anaconda Navigator,用于管理环境和包

· Ancaonda Prompt,使用命令行界面来管理环境和包

· Spyder,面向科学开发的IDE

· Jupyter Notebook,使用命令行界面来进行交互编程

检验和升级

要想验证一下Anaconda是否安装好了,可以进入命令行界面进行验证。

1) 打开命令行界面

从开始菜单中,启动Anaconda Prompt,最好使用管理员身份启动(右键菜单),这样避免后续出现权限不足的问题。

python 如何搭建环境(Python开发环境搭建)(10)

2) 查看扩展包。

conda程序,是Anaconda包默认的包管理程序。输入命令conda list,可查看当前安装过的扩展库。你会发现有一大批扩展包,扩展包的位置默认在Anaconda3\pkgs。

python 如何搭建环境(Python开发环境搭建)(11)

3) 升级conda包管理程序

输入命令conda -V可查看当前conda的版本号。

输入命令conda update conda,来升级当前conda程序。如下提示中输入y,回车即可升级(4.7.104.7.12)。

然后,再根据需要安装其它的扩展包,详情请参考其他小节。

python 如何搭建环境(Python开发环境搭建)(12)

三、开发环境安装1、工具选择

正如前面所述,常用的开发工具基本上分为两大类:交互式开发,集成开发环境(IDE)。

1)交互式开发

交互式开发,相当于直接在解释器中进行交互,逐条输入Python语句,马上输出运行结果。

最简单地,就是直接用官方解释器CPython进行交互。如下启动Python,逐步输入Python代码,回车即马上执行,输出代码结果。

但是,官方CPython解释器在输入多行语句和复杂语句时不太方便。所以,大多数开发者会选择功能更强大的解释器。

python 如何搭建环境(Python开发环境搭建)(13)

最常用的交互开发工具,当属Jupyter Notebook无疑。Jupyter Notebook开发工具和环境,是基于IPython解释器的一个基于Web浏览器的开发环境,它支持注释/代码混写,支持多行代码编写,也方便项目文件的管理等。

如果你在前面选择的是Anaconda打包安装,随之安装的就有IPython解释器,以及Jupyter Notebook交互工具。

在开始菜单中,运行Anaconda Navigator,你可以看到jupyter Notebook,点击运行(Launch),然后就会打开一个Web浏览器,点击右上角的New->Python3就会建一个Untitled1文件,于是就进入Jupter Notebook交互界面。

现在你可以输入各种Python语句,进行交互开发了,并且可以保存脚本;点击Untitled1,还可以重命名脚本文件。

python 如何搭建环境(Python开发环境搭建)(14)

python 如何搭建环境(Python开发环境搭建)(15)

一般地,交互式开发工具,比较适合于教学和小型程序开发等。

2)集成开发环境

对于复杂的大型的Python项目,就需要使用集成开发环境(IDE)了。IDE集成了大型项目需要的功能,除了提供代码编写功能外,还支持项目的管理,协同开发等。

常用的IDE有很多,如PyCharm、VSCode、Sublime Text等。

· PyCharm:号称是最好的Python开发工具,有免费版本也有付费版本。

· VS Code:号称宇宙第一IDE,微软最好的开发工具,通过扩展支持大量的编程语言,同样功能强大,而且学习容易,关键还免费。

· Sublime Text:开源的免费的工具,时不时弹出打赏界面,稍为有点烦。

IDE还提供调试、断点跟踪、临时变量查看等等功能。

2、安装VS Code

考虑到IDE的优越性,建议大家使用VS Code IDE进行Python开发。安装VS Code的步骤如下:

1) 下载安装包

在官方网站https://code.visualstudio.com,基于操作系统下载合适的安装包。

2) 双击安装包VSCodeUserSetup-x64-1.38.1.exe运行

3) 选择默认安装即可。

VS Code 默认安装在用户目录下:

C:\Users\xxxx\AppData\Local\Programs\Microsoft VS Code

3、配置VS Code

因为VS Code是一个万能的开发IDE,支持很多编程语言的开发。接下来,我们需要配置Python开发。下面,只有第3、4步是必须的,其余可根据需要进行配置。

1)更换颜色主题

默认下,VS Code采用白字黑纸的背景以保护眼睛,现在,可以修改为常用的白纸黑字。

点击File>Preferences->Color Theme,会弹出主体选择下拉框,现在选择Light (default light)即可。

python 如何搭建环境(Python开发环境搭建)(16)

python 如何搭建环境(Python开发环境搭建)(17)

2)配置中文界面

默认情况下是英文界面,现在修改为熟悉的中文界面。

点击左下角的扩展Extensions,在搜索框中输入chiense,即会搜索出简体中文语言包:

Chinese(simplified) Language Pack for Visual Studio Code,点击Install,VS Code会自动下载相应扩展,然后提示重启VSCode,即可生效。

python 如何搭建环境(Python开发环境搭建)(18)

3)安装Python扩展

要使用VS Code开发Python程序,还需要安装Python扩展。

如下搜索python extension pack,点击安装即可。实际上,这个扩展包含了如下5个扩展:

· Python:主要用于连接、调试、测试程序

· MagicPython:支持语法高亮

· Visual Studio IntelliCode:代码智能提示

· 以及Jinja, Django等

在安装扩展后,VS Code会提示你需要下载或安装某些包,请点击接受或安装即可。

python 如何搭建环境(Python开发环境搭建)(19)

4)配置解释器

一般情况下,VS Code只负责代码编写等功能,它需要使用底层的Python解释器进行代码执行和调试,因此,需要指定VS Code关联使用哪个Python解释器,特别是当你安装了多个Python版本时。

python 如何搭建环境(Python开发环境搭建)(20)

在安装好上述Python扩展后,一般VS Code会提示你选择解释器。你可以有三种方法来配置解释器:

1) 点击提醒框中Select Python Interpreter按钮

2) 点击VS Code左下角的Select Python Interprter

3) 快捷方式Ctrl Shift P,输入select interpreter

然后,在弹出来的选项中,单击选中合适的Python解释器即可。如下所示,因为我只安装了Python核心程序,所以只有一个选项。

python 如何搭建环境(Python开发环境搭建)(21)

python 如何搭建环境(Python开发环境搭建)(22)

如下所示,我在MacOS中安装了多个Python版本,所以Select Interpreter中会显示多个选项,以供选择。

python 如何搭建环境(Python开发环境搭建)(23)

四、扩展包管理

Python的功能之所以强大,就在于Python中提供了大量的可扩展的包,这些包可以根据需要进行随时安装和使用,以适应大量的业务场景。比如:

· Pandas:提供数据集的处理和分析功能

· Matplotlib:提供图形可视化功能

· Pygame:提供游戏开发功能

· Tkinter:提供图形界面GUI的开发功能

等等。

为了实现扩展包的有效管理,Python提供了专门的包管理程序,用于包的查询、安装、更新、删除等操作。Python中的包管理工具有两个:pip(Python官方提供)和conda(Anaconda提供)。

类似于java的maven,RedHat中的yum。

1、pip工具

pip是常用的Python自带的官方的包管理工具,在安装Python时会自动安装好,可以用来很方便地安装和管理各种三方库。

pip使用命令操作,非常方便,而且还能自动解决包依赖问题。在使用pip时,需要联外网才能下载并安装扩展包。

可以使用命令pip -h来显示pip的使用命令,以及使用pip -V显示pip的版本。

需要注意的一点是,如果你电脑上安装了 python 2.x 和 3.x 两个版本的话,则 pip -V默认显示的是2.x版本,要使用pip3 -V查看3.x 对应的版本。

常用的pip命令如下:

>pip -h 查看帮助

>pip –V 检查pip的版本号

>pip list 查看已经安装的包

>pip list --outdated 查看哪些包需要更新

>pip show Somepackage 查看已安装的包的信息

>pip install --upgrade pip 升级pip自己到最新版本

>pip install Somepackage 安装指定的扩展包

>pip install --upgrade Sompackage 升级指定的扩展包

>pip uninstall Sompackage 卸载包

pip扩展库的默认位置在Python37\Lib\site-packages目录。

2、conda包管理

如果安装了Anaconda,则提供了conda包管理工具。打开Anaconda Prompt运行如下命令。

常用的conda命令如下:

> conda list 查看已经安装的包

> conda search search_term 搜索并显示安装包

> conda install Somepackage 安装包,会自动安装依赖项。

> conda remove Somepackage 卸载包

> conda update Somepackage 升级指定的扩展包

> conda upgrade --all 批量更新所有扩展包

conda安装的扩展库默认位置在anaconda3\pkgs下。

3、工具比较

两个包管理工具的功能基本相同,命令比较如下表:

相比之下,conda命令更简洁,也更强大些。比如conda提供conda update --all命令,一条命令实现所有包的升级。

4、VSCode中随用随装

我最喜欢的安装扩展包方式,就是在VS Code中随用随装。

在VS Code中,下方有一个面板,其中有终端命令行界面,是可以直接输入命令行的。

如下所示,VS Code关联的是conda中的Python解释器(见右下角);在代码中,我使用了pandas和numpy扩展包;因此,在VS Code下的终端界面中,输入了conda install pandas命令来安装特定扩展包,类似可使用cond install numpy安装numpy扩展包。

python 如何搭建环境(Python开发环境搭建)(24)

另外一个示例,如下图所示,我是直接使用Python核心解释器的,此时,你就需要使用pip来安装扩展库。

python 如何搭建环境(Python开发环境搭建)(25)

这样,可以根据需要,随时安装相应的扩展包,也不用切换到相应的命令行界面。

在数据分析领域,经常需要使用如下扩展包,可以练习一下如何安装如下的扩展包:

五、Python解释器

Python是一门解释器语言,所有的代码都必须通过解释器执行。Python源代码会逐条进入解释器,由解释器执行后再输出结果。

python 如何搭建环境(Python开发环境搭建)(26)

Python解释器有多种实现方式,有用C实现的,有用Java实现的等等。比较常见的有CPython,IPython等。

1、CPython(Cython)

这是官方默认的Python解释器,用C语言写的。当执行Python代码时,CPython会将代码转化成字节码(bytecode)。

默认情况下,你在命令行中启动Python,就进入了CPython解释器的交互界面。

CPython用>>>作为提示符。

2、IPython

基于CPython之上的一个加强版交互式解释器,执行代码时和CPython完全一样。但支持语法高亮,支持变量、模块、函数、类的自动补全,支持shell命令,内置许多特殊功能函数,比如%pwd显示当前目录,%env显示环境变量等。

交互式开发工具Jupyter Notebook,使用的就是IPython解释器。

IPython用In [序号]:作为提示符。

3、PyPy

这个是用Python语言本身写成的解释器,PyPy会把代码转化成机器码,所以可显著提高Python代码的执行速度。

不过,同样的代码在PyPy执行和在CPython执行,其执行结果会有不同。

4、Jython

用Java实现的解释器。Jython允许把Java的模块加载到python模块中使用。Jython使用了JIT技术,运行程序时会先转化成Java字节码,使用使用JRE执行;程序还可以把Python代码打包成jar包。

5、IronPython

用C#实现的解释器,可以用在微软.NET平台上,直接将Python代码编译成.Net字节码。

六、虚拟环境管理

当前,由于Python的版本在不断升级,而且Python3并不完全是后向兼容的,Python2中的一些语句在Python3中不能够直接使用。典型的比如打印print,在Python2中是一条print语句,但在Python3中却是一个函数print()。

>>>print "hello world" #Python2中这样使用

>>>print("hello world") #Python3中这样使用

这会导致在Python升级后影响部分Python程序的运行。为了解决定个版本不兼容的问题,Python引入了虚拟环境(virtualenv)这个概念,即允许Python的多个版本共存,而且不同的Python程序可以在不同的虚拟环境中运行,互不影响。

所以,虚拟环境是用来隔离Python项目/程序的,不同的虚拟环境中可以有不同版本的Python库。

Python中可以虚拟环境管理有两种方式:一种是virtualenv,一种是conda。

1、Virtualenv管理

默认情况下,Python并没有安装虚拟环境管理工具,需要自行安装虚拟环境,以及虚拟环境管理工具。

这个比较麻烦,所以本文档暂不描述。

2、conda管理

如果安装过anaconda包,则已经安装好虚拟环境,而且会自动创建一个叫做base的虚拟环境名。虚拟环境目录如下:

C:\ProgramData\Anaconda3\envs(Windows系统)

/Users/xxxx/anaconda3/envs(MacOS系统)

下面使用conda来演示虚拟环境的管理。

查看可用环境

>conda env list

列出你创建的所有可用的虚拟环境名称。名称前带有一个星号(*)的,表示是当前正在使用的虚拟环境。

一般,conda下有一个默认的虚拟环境叫base。

创建环境

>conda create –n py2

这样就在环境envs/py2下创建了一个虚拟环境,名为py2,不过默认的Python版本是Python3。

如果想创建指定的Python 2.7版本虚拟环境,则可以使用下列命令:

>conda create -n py2 python=2.7

进入环境

虚拟环境创建后,就可以进入虚拟环境,或叫激活虚拟环境。

>conda activate py2

进入环境后,就会在提示符中看到带括号的环境名称。

进入虚拟环境后,就可以使用conda来安装所需要的特定版本的扩展库。

导出环境

现在,你已经在虚拟环境中安装了特定版本的包或库。如果想共享你的虚拟环境包,以便其他人安装并使用你的Python程序,就可以导出你的环境中所用到的库的版本。

>conda env export -f mypy2env.txt

这样就将环境中所用到的所有包的名称,以及版本都写入了该文件。

离开环境

如果想离开当前的虚拟环境,则可以使用命令

>conda deactivate

这样就离开当前环境,进入到默认的虚拟环境base。

使用环境

现在,如果你要使用其他人的虚拟环境和程序,就可以创建和他一样的虚拟环境。

>conda env create –f mypy2env.txt

这样,就创建了一个新虚拟环境,环境中包含了文件中列出的同样版本的包或扩展库,就可以正常地运行他人的Python程序了。

删除环境

如果你不想使用自建的环境了,那么先离开此环境,然后就可以删除此环境。

>conda env remove -n py2

25

,