附录 B 文本编辑器
程序员花大量时间来编写、阅读和编辑代码,因此使用的文本编辑器必须能够尽可能提高完成这种工作的效率。高效的编辑器应突出代码的结构,让你在编写代码时就能够发现常见的bug。它还应包含自动缩进功能、显示代码长度的标志以及用于执行常见操作的快捷键。
如果你是编程新手,应使用具备上述功能但学习起来又不难的编辑器。另外,你最好对更高级的编辑器有所了解,这样就知道何时该考虑升级编辑器了。
对于每种主要的操作系统,我们都将介绍一款符合上述条件的编辑器:使用Linux或Windows系统的初学者可使用Geany;使用OS X的初学者可使用Sublime Text(它在Linux和Windows系统中的效果也很好)。我们还将介绍Python自带的编辑器IDLE。最后,我们将介绍Emacs和vim,这是两款高级编辑器,随着你不断地学习编程,经常会听到有人提起它们。我们将把hello_world.py作为示例程序,在上述每款编辑器中运行它。
B.1 Geany
Geany是一款简单的编辑器,你可以在其中直接运行几乎任何程序。它还在一个终端窗口中显示程序的输出,这有助于你逐渐习惯使用终端。
B.1.1 在Linux系统中安装Geany
在大多数Linux系统中,安装Geany只需一个命令:
- $ sudo apt-get install geany
如果你的系统安装了多个版本的Python,就必须配置Geany,使其使用正确的版本。启动Geany,选择菜单File ▶ Save As,将当前的空文件保存为hello_world.py,再在编辑窗口中输入下面一行代码:
print("Hello Python world!")
选择菜单Build ▶ Set Build Commands,你将看到文字Compile和Execute,它们旁边都有一个命令。默认情况下,这两个命令都是python
,要让Geany使用命令python3
,必须做相应的修改。将编译命令修改成下面这样:
python3 -m py_compile "%f"
你必须完全按这里显示的这样输出这个命令,确保空格和大小写都完全相同。
将执行命令修改成下面这样:
python3 "%f"
同样,务必确保空格和大小写都完全与显示的相同。
B.1.2 在Windows系统中安装Geany
要下载Windows Greany安装程序,可访问http://geany.org/,单击Download下的Releases,找到安装程序geany-1.25_setup.exe或类似的文件。下载安装程序后,运行它并接受所有的默认设置。
启动Geany,选择菜单File ▶ Save As,将当前的空文件保存为hello_world.py,再在编辑窗口中输入下面一行代码:
print("Hello Python world!")
现在选择菜单Build ▶ Set Build Commands,你将看到文字Compile和Execute,它们旁边都有一个命令。默认情况下,这两个命令都是python
(全部小写),但Geany不知道这个命令位于系统的什么地方。你需要添加启动终端会话时使用的路径(如果你按附录A描述的那样设置了变量Path
,可跳过这些步骤)。在编译命令和执行命令中,添加命令python
所在的驱动器和文件夹。编译命令应类似于下面这样:
C:\Python35\python -m py_compile "%f"
在你的系统上,路径可能稍有不同,但你必须确保空格和大小写都与这里显示的完全相同。
执行命令应类似于下面这样:
C:\Python35\python "%f"
同样,务必确保空格和大小写都与这里显示的完全相同。正确地设置这些命令后,单击OK按钮。现在,你应该能够成功地运行程序了。
B.1.3 在Geany中运行Python程序
在Geany中运行程序的方式有三种。为运行程序hello_world.py,可选择菜单Build ▶ Execute、单击由两个齿轮组成的图标或按F5。运行hello_world.py时,将弹出一个终端窗口,其中包含如下输出:
Hello Python world!
------------------
(program exited with code: 0)
Press return to continue
B.1.4 定制Geany的设置
下面来定制本附录开头提到的功能,尽可能提高Geany的效率。
1. 将制表符转换为空格
在代码中混合使用制表符和空格可能会给Python程序带来极难诊断的问题。为在Geany中查看缩进设置,选择菜单Edit ▶ Preferences,再依次单击Editor和Indentation。将制表符宽度设置为4,并将Type设置为Spaces。
如果你在程序中混合使用了标识符和空格,可选择菜单Document ▶ Replace Tabs by Spaces(“替换制表符为空格”),将所有制表符都转换为空格。
2. 设置行长标志
在大多数编辑器中,都可设置视觉线索(通常是一条竖线),来指出代码行应在什么地方结束。要在Geany中设置这项功能,请选择菜单Edit ▶ Preferences,再依次单击Editor和Display,确保启用了长行标志,再确保文本框“列”中的值为79。
3. 缩进和撤销缩进代码块
要缩进代码块,可选择它,再选择菜单Edit ▶ Format ▶ Increase Indent,也可按Ctrl + I。要撤销代码块缩进,可选择菜单Edit ▶ Format ▶ Decrease Indent,也可按Ctrl + U。
4. 将代码块注释掉
要暂时禁用一个代码块,可选择它,并将它注释掉,这样Python将忽略它。为此,可选择菜单Edit ▶ Format ▶ Toggle Line Commentation,也可按Ctrl + E。选择的代码将被注释掉,并使用特殊字符序列#~
指出这不是常规注释。要对代码块取消注释,可选择它,并再次选择前述菜单。
B.2 Sublime Text
Sublime Text是一款简单的文本编辑器,它在OS X(及其他系统)中易于安装,让你能够直接运行几乎所有程序。它还能在内嵌在Sublime Text窗口内的终端会话中运行代码,让你能够轻松地查看输出。
Sublime Text的许可策略非常灵活,你可以永久地免费使用这款编辑器,但如果你喜欢它并想长期使用,作者建议你购买许可证。我们将下载Sublime Text 3——编写本书时的最新版本。
B.2.1 在OS X系统中安装Sublime Text
要下载Sublime Text安装程序,可访问http://sublimetext.com/3,单击链接Download,并查找OS X安装程序。下载安装程序后,打开它,再将Sublime Text图标拖放到文件夹Applications。
B.2.2 在Linux系统中安装Sublime Text
在大多数Linux系统中,安装Sublime Text的最简单方式是通过终端会话,如下所示:
- $ sudo add-apt-repository ppa:webupd8team/sublimetext-3
- $ sudo apt-get update
- $ sudo apt-get install sublimetext-installer
B.2.3 在Windows系统中安装Sublime Text
从http://www.sublimetext.com/3下载Windows安装程序。运行这个安装程序,你将在开始菜单中看到Sublime Text。
B.2.4 在Sublime Text中运行Python程序
如果你使用的是系统自带的Python版本,可能无需调整任何设置就能运行程序。要运行程序,可选择菜单Tools ▶ Build或按Ctrl + B。运行hello_world.py时,你将在Sublime Text窗口的底部看到一个终端屏幕,其中包含如下输出:
Hello Python world!
[Finished in 0.1s]
B.2.5 配置Sublime Text
如果你安装了多个Python版本或者Sublime Text不能自动运行程序,你可能需要设置一个配置文件。你首先需要知道Python解释器的完整路径,为此,在Linux或OS X系统中执行如下命令:
- $ type -a python3
- python3 is usrlocal/bin/python3
请将python3
替换为你启动终端会话时使用的命令。
如果你使用的是Windows系统,要获悉Python解释器的路径,请参阅“在Windows系统中安装Python 3”一节。
现在,启动Sublime Text,并选择菜单Tools ▶ Build System ▶ New Build System,这将打开一个新的配置文件。删除其中的所有内容,再输入如下内容:
Python3 .sublime-build
{
"cmd": ["usrlocal/bin/python3", "-u", "$file"],
}
这些代码让Sublime Text使用命令python3
来运行当前打开的文件。请确保其中的路径为你在前一步获悉的路径(在Windows系统中,该路径类似于C:/Python35/python
)。将这个配置文件命名为Python3.sublime-build,并将其保存到默认目录——选择菜单Save时Sublime Text打开的目录。
打开hello_world.py,选择菜单Tools ▶ Build System ▶ Python3,再选择菜单Tools ▶ Build,你将在内嵌在Sublime Text窗口底部的终端中看到输出。
B.2.6 定制Sublime Text的设置
下面来定制本附录开头提到的功能,以尽可能提高Sublime Text的效率。
1. 将制表符转换为空格
选择菜单View ▶ Indentation,核实选择了复选框Indent Using Spaces。如果没有选择该复选框,现在选择它。
2. 设置行长标志
选择菜单View ▶ Ruler,再单击80,Sublime Text将在这个80字符标志处放置一条竖线。
3. 缩进和取消缩进代码块
要缩进代码块,可选择它,再选择菜单Edit ▶ Line ▶ Indent或按Ctrl + ]。要取消缩进代码块,可选择菜单Edit ▶ Line ▶ Unindent或按Ctrl + [。
4. 将代码块注释掉
要将代码块注释掉,可选择它,再选择菜单Edit ▶ Comment ▶ Toggle Comment或按Ctrl + /。要取消代码块注释,再次执行这个命令。
B.3 IDLE
IDLE是Python的默认编辑器,相比于Geany和Sublime Text,它不那么直观,但其他教程指出它适合初学者使用,因此你不妨试一试。
B.3.1 在Linux系统中安装IDLE
如果你使用的是Python 3,请像下面这样安装idle3
包:
- $ sudo apt-get install idle3
如果你使用的是Python 2,请像下面这样安装idle
包:
- $ sudo apt-get install idle
B.3.2 在OS X系统中安装IDLE
如果你的Python是使用Homebrew安装的,那么可能已经安装了IDLE。在终端中,执行命令brew linkapps
,它告诉IDLE如何在系统中查找正确的Python解释器。随后,你会在文件夹Applications中看到IDLE。
如果你的Python不是使用Homebrew安装的,请访问https://www.python.org/download/mac/tcltk/,并按这里的说明做。你还需安装IDLE依赖的一些图形包。
B.3.3 在Windows系统中安装IDLE
你安装Python时,应该自动安装了IDLE,因此它应该包含在开始菜单中。
B.3.4 定制IDLE的设置
由于IDLE是默认的Python编辑器,因此它的大多数设置都被设置为推荐的Python设置:将制表符自动转换为空格;行长标志出现在80字符处。
1. 缩进和取消缩进代码块
要缩进代码块,可选择它,再选择菜单Format ▶ Indent Region或按Ctrl + ];要取消代码块缩进,可选择菜单Format ▶ Dedent Region或按Ctrl + [。
2. 将代码块注释掉
要将代码块注释掉,可选择它,再选择菜单Format ▶ Comment Out Region或按Alt + 3。要取消代码块注释,可选择菜单Format ▶ Uncomment Region或按Alt + 4。
B.4 Emacs和vim
Emacs和vim是两款流行的编辑器,深受众多经验丰富的程序员的喜爱,因为使用它们时,用户根本不用离开键盘。因此,学会使用这些编辑器后,编写、阅读和编辑代码的效率将极高;这也意味着学习使用它们的难度极大。
程序员通常会推荐你试一试,但很多熟练的程序员忘了编程新手尝试学习使用它们将花费很多时间。知道这些编辑器是有益的,但请先使用简单的编辑器,它们让你能够专注于学习编程,而不是费时间去学习如何使用编辑器。等你能够熟悉地编写和编辑代码后,再去使用这些编辑器吧。