![数据结构与算法(Python版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/974/41864974/b_41864974.jpg)
2.3 Python编辑器
Python编辑器众多,有Python自带的IDLE编辑器、Notepad++、Eclipse+PyDev、UliPad,以及Vim和Emacs等。Linux下的Eclipse+PyDev和Windows下的PyCharm功能较为强大。
2.3.1 IDLE
IDLE包括能够利用颜色突出显示语法的编辑器、调试工具、Python Shell以及完整的Python 3在线文档集。Python的IDLE具有命令行和图形用户界面两种方式。采用命令行交互式执行Python语句,方便快捷,但必须逐条输入语句,不能重复执行,适合测试少量的Python代码,不适合复杂的程序设计。
IDLE的命令行交互式模式如图2.6所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_23_02.jpg?sign=1738884746-ob9S5o4PA9hdrhOvTx5rzUexNR49Xxcm-0-a87bff212e48c28749e07a205965e4eb)
图2.6 IDLE的命令行交互式模式
IDLE图形用户界面模式如图2.7所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_24_01.jpg?sign=1738884746-MJuzcH5DOiGyMyehfkoJk8hqGSeO3zCJ-0-5e34b44a151b8236a07b755986ec5b92)
图2.7 IDLE的图形用户界面模式
2.3.2 PyCharm
PyCharm具有一整套可以帮助用户在使用Python语言开发时提高效率的工具,如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试和版本控制。此外,PyCharm还提供了一些高级功能,用于支持Django框架下的专业Web开发。下载PyCharm并双击安装,如图2.8所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_24_02.jpg?sign=1738884746-JLrxTnbHm1iubMuIUrZxiGEJC8EtBVjz-0-06b5a46dbd17b1d0d378cbe85a143b3c)
图2.8 安装PyCharm步骤1
单击Next按钮,在出现的界面中单击Install按钮进入安装过程,如图2.9所示。
安装结束,单击OK按钮运行PyCharm,如图2.10所示。
单击Create New Project,在弹出的对话框中输入项目名、路径,并选择Python解释器。如图2.11所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_25_01.jpg?sign=1738884746-ytwsErxlrxsG9CMXOg30Vm807nO03uDJ-0-9c95e84b63292e7f7d7cbd12c0fed9ca)
图2.9 安装PyCharm步骤2
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_25_02.jpg?sign=1738884746-qKMZ6Kf2nkFHl3dR5Q8jI4WCQQXI6zmd-0-27e3e5e97babee548e27eb64f5b4ff8f)
图2.10 运行PyCharm
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_25_03.jpg?sign=1738884746-9HBzJ59UKni6WSuNrzBsiJ2nTUHHv6S0-0-37460c639a23043fa2a4dd78e3595618)
图2.11 选择Python解释器
启动PyCharm,创建Python文件,如图2.12所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_26_01.jpg?sign=1738884746-5PxGJrtB62D8pQEcKdDIrOT76ucGStmj-0-91003ec2c714c62434f624f39dae838c)
图2.12 PyCharm创建Python文件
2.3.3 Anaconda
Anaconda是一个开源的Python发行版本,其包含了Conda、Numpy等180多个科学包及其依赖项,涉及数据可视化、机器学习和深度学习等多方面,本书重点介绍Anaconda,所有程序均在Anaconda下调试与运行。Anaconda的特点如下。
● 提供包管理。可以使用conda和pip命令安装、更新、卸载第三方工具包,简单方便,不需要考虑版本等问题。
● 集成了数据科学相关的工具包。Anaconda集成了如NumPy、SciPy、Pandas等数据分析的各类第三方包。
●提供虚拟环境管理。在Conda中可以建立多个虚拟环境,可以为不同的Python版本项目建立不同的运行环境,从而解决了Python多版本并存的问题。
Anaconda的安装步骤如下所述。
1)Anaconda的官网下载地址为https://www.anaconda.com/download/,如图2.13所示。
2)选择Python 3.6 version,并根据自己的操作系统是32位还是64位选择对应的版本下载,如图2.14所示。
3)在弹出的对话框中选择下载位置,下载Anaconda3-5.1.0-Windows-x86_64.exe,大约537 MB。单击“下载”按钮进行下载,如图2.15所示。
注意:如果是Windows 10系统,安装Anaconda软件时,需要右击安装软件,选择以管理员的身份运行。
4)下载完毕,双击软件进行安装,选择安装路径,如C:\anaconda3,根据提示单击“下一步”按钮即可完成安装,如图2.16所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_27_01.jpg?sign=1738884746-KkJ0lUfMyddL3OSyM1XMuVFMxx3SxmFD-0-2e308605cc652d1672a8fe50442f385c)
图2.13 Anaconda的网站
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_27_02.jpg?sign=1738884746-9PgC6Gt1vUTc5bDiAtb0Scvk2EjtnKXL-0-f5fe12adb052caa7a77b8e892e98b32a)
图2.14 选择Python 3.6
Anaconda包含如下应用,如图2.17所示。
●Anaconda Navigator:用于管理工具包和环境的图形用户界面,其涉及的众多管理命令也可以在Navigator中手工实现。
● Anaconda Prompt:Python的交互式运行环境。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_28_01.jpg?sign=1738884746-xhE1xBMV3i7rmM4BTtN9ZV7aoSfSSQVB-0-e73e3c8293d846d5f14bf93354d4ee86)
图2.15 下载Anaconda文件
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_28_02.jpg?sign=1738884746-Usbe2PVEsczzw7lw6OLulVV3yc09oJPW-0-bd310292c1d81ee71ab7557cecca634d)
图2.16 程序运行结果
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_28_03.jpg?sign=1738884746-CjraalEHteOhJSQMZ2TvDHoIvQi9rQOa-0-3ac0e1eb885611868353c47b47cf7d7e)
图2.17 Anaconda包含应用
● Jupyter Notebook:基于Web的交互式计算环境,可以编辑易于人们阅读的文档,用于展示数据分析的过程。
● Spyder:一个使用Python语言、跨平台的科学运算开发环境。相对于PyDev、PyC-harm、PTVS等Python编辑器,Spyder对内存的需求小很多。
下面,对Anaconda的环境变量进行配置。打开Anaconda Prompt,出现类似于cmd的窗口,在其中输入conda--version命令,运行效果如图2.18所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_28_04.jpg?sign=1738884746-Oh6DtxDJ5Ic2V7dy946RbSzPXoMpxdAW-0-43055593587f0fb63d97949ec981d0ad)
图2.18 Anaconda版本
在Anaconda Prompt中输入命令conda create-n env_name package_names。
其中,env_name是设置环境的名称,package_names是安装在环境中的包名称。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_29_01.jpg?sign=1738884746-itwYK46dzFnRsTUSxkbv5ME38AEGjNVC-0-804e66f842e006c81837688d294acfd0)
运行效果如图2.19所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_29_02.jpg?sign=1738884746-iVMpr0j3TJH0mqmY8H9LtEN0mIuUzugQ-0-04a660238aecd139bf2d8bef32b00f7b)
图2.19 创建基于Python3.6的名为test_py3的环境
在Anaconda Prompt中使用conda list查看环境中默认安装的包,如图2.20所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_29_03.jpg?sign=1738884746-RmlxTN3drCUAPhmQq4pgFLAx1A0NpSjP-0-5fe7048e3591d5d13aa702c451b82853)
图2.20 查看环境中默认的安装包
在Anaconda下,Python的编辑和执行有交互式编程、脚本式编程和Spyder3种运行方式。
(1)交互式编程
交互式编程是指在编辑完一行代码后,按〈Enter〉键会立即执行并显示运行结果。在test_py3环境中输入python命令并按〈Enter〉键后,会出现>>>,进入交互式编程模式,如图2.21所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_29_04.jpg?sign=1738884746-7XEZD0LtkVAD0VAJYy7hMBC5BRo9GynQ-0-b863ec922c45b206de915fad230c4407)
图2.21 进入交互式编程模式
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_29_05.jpg?sign=1738884746-PtF4nf7BkPHuNhQFqe4gHHnrYyU51ZJB-0-97ab83b51404662a534d5b3c12fd11b6)
在>>>后面输入Python语言的各种命令。例如,输入print('Hello world!')命令,如图2.22所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_30_01.jpg?sign=1738884746-NVRNMMFKlwNtPqFTVI4DbmDFatK9z5xQ-0-20ba6a26b62478c6e90dbf3cf1f243b7)
图2.22 输入print('Hello world!')命令
(2)脚本式编程
Python和其他脚本语言(如R和Perl等)一样,可以直接在命令行里运行脚本程序。首先,在D:\目录下创建Hello.py文件,内容如图2.23所示。
然后,进入test_py3环境后,输入python d:\Hello.py命令,运行结果如图2.24所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_30_02.jpg?sign=1738884746-thrjvu1XbOtdApzPl7YVD81ZZoe51VLs-0-42f26cd9de7347fccb95372439f79035)
图2.23 Hello.py文件内容
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_30_03.jpg?sign=1738884746-NfI67CvSg6dGiR6bmCua1yKMWV1tiWsH-0-c01afa858421a8100964fec9ca6a7dc6)
图2.24 运行d:\Hello.py文件
(3)Spyder
Spyder是Python的集成开发环境,如图2.25所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_30_04.jpg?sign=1738884746-QCVEjvMexfu4d9SeUbGYlciAxNy6Qk3x-0-458be50de08ff93d24e0230c16978b00)
图2.25 Spyder编辑器
2.3.4 Jupyter Notebook
Jupyter Notebook是Python的在线编辑器,在编辑的过程中,运行结果显示在代码的下方,方便查看。Jupyter Notebook可以将代码、图像、注释、公式和可视化的结果等信息保存到文件。
在Anaconda中打开Jupyter Notebook,如图2.26所示。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_31_01.jpg?sign=1738884746-TDBWuI6Stew5gqNS6bwIGeUsfyTFpoay-0-ea6c06b2db85fae9f4a4969b7ca7168d)
图2.26 Jupyter Notebook主界面
Jupyter Notebook有编辑模式和命令模式两种模式。编辑模式用于修改单个单元格,命令模式用于操作整个笔记本,具体如下所述。
(1)编辑模式(Edit Mode)
编辑模式如图2.27所示,右上角有一个铅笔图标,单元左侧边框线呈现绿色,按〈Esc〉键或按〈Ctrl+Enter〉组合键运行单元格可切换回命令模式。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_31_02.jpg?sign=1738884746-kr2qyTtTX59uwagcs862xKDXlqPRZYvi-0-d0055b332b2f8ab93239e1b8ccdb51a1)
图2.27 编辑模式
(2)命令模式(Command Mode)
命令模式如图2.28所示,铅笔图标消失,单元左侧边框线呈现蓝色,按〈Enter〉键或双击单元格可变为编辑状态。
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_31_03.jpg?sign=1738884746-HtkmhtsXDJKgFyWEJ1ns7Yh7ebQgoUdT-0-894110584eb54113247b543a6116ef22)
图2.28 命令模式
编辑模式和命令模式两种模式的切换如表2.1所示。
表2.1 切换笔记本模式的可选操作
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_32_01.jpg?sign=1738884746-LJagLnJ2Rdag4feO0x668DYuwLd33mgy-0-82d7c7ef7724162f6f1ebf2d74e3871a)
编辑模式下,可以使用非常标准的编辑命令来修改单元格的内容。命令模式的操作如表2.2所示。
表2.2 命令模式的操作
![](https://epubservercos.yuewen.com/3C8452/21889219301185006/epubprivate/OEBPS/Images/978-7-111-66363-8_32_02.jpg?sign=1738884746-8A7aO2OFzo3A59JfoQ6mmgYEWZFK0D50-0-e9e0ab13156ceee88603af8104ea0d33)