第1章-IDLE编程

使用IDLE

python自带代码编辑器: IDLE (整合的发展和学习环境)。有一些传说,闲置的名字来自埃里克闲置,一个演员在 * Python 小组* .IDE是程序员的一个编辑器,它提供语言中关键字的颜色突出显示、自动完成、一个“实验性”调试器和许多其他有趣的东西。您可以为最流行的语言找到一个IDE,许多IDE可以与多种语言一起使用。 IDLE 是一种精简的IDE,但它确实提到了所有这些项。它允许程序员非常容易地编写Python和调试代码。我之所以称之为“Lite”,是因为调试器是非常基本的,而且它缺少一些其他的特性,这些特性是程序员使用类似 Visual Studio 会错过的。您可能还想知道idle是使用与Python一起提供的一个PythonGUI工具包tkinter创建的。

要打开 IDLE ,您需要找到它,然后您会看到如下内容:

_images/idle_main.jpg

是的,它是一个python shell,您可以在其中键入短脚本并立即看到它们的输出,甚至可以与代码实时交互。没有编译代码,因为Python是一种解释性语言,在Python解释器中运行。现在我们来编写您的第一个程序。在 IDLE 状态下的命令提示符(>>>)后键入以下内容:

print("Hello from Python!")

你刚刚写了你的第一个程序!你的程序所做的就是在屏幕上写一个字符串,但是你会发现这在以后很有用。请注意 打印 python 3.x中的语句发生了更改。在python 2.x中,您可以这样编写上面的语句:

print "Hello from Python!"

在python 3中, 打印 语句被转换为 打印功能 这就是为什么需要括号。您将在第10章中了解哪些功能。

如果要将代码保存到文件中,请转到“文件”菜单并选择“新建窗口”(或按ctrl+n)。现在您可以输入程序并将其保存在此处。使用python shell的主要好处是,在将代码放入真正的程序之前,您可以用小片段进行试验,以了解代码的行为。代码编辑器屏幕与上面的 IDLE 屏幕截图稍有不同:

_images/idle_editor.jpg

现在,我们将花一点时间研究idle的其他有用特性。

python提供了许多模块和包,您可以导入这些模块和包来添加新功能。例如,可以导入 math 模块适用于各种良好的数学函数,如平方根、余弦等。在 File 菜单,你会发现 路径浏览器 这对于确定Python在何处查找模块导入很有用。可以看到,python首先查找与运行脚本相同的目录,以查看是否存在需要导入的文件。然后检查其他位置的预定义列表。实际上,您也可以添加和删除位置。如果导入了任何文件,路径浏览器将显示这些文件在硬盘上的位置。我的路径浏览器如下所示:

_images/path_browser.jpg

接下来有一个 类浏览器 这将帮助您导航代码。坦率地说,如果这个菜单选项被称为“模块浏览器”,那就更有意义了,因为它更接近于你实际要做的事情。这实际上对你来说不是很有用,但将来会有用。当您在一个文件中有很多行代码时,您会发现它很有用,因为它会为您的代码提供一个“树状”的界面。请注意,除非实际保存了程序,否则无法加载类浏览器。

这个 Edit 菜单具有典型的功能,如复制、剪切、粘贴、撤消、重做和全选。它还包含搜索代码和执行搜索和替换的各种方法。最后,“编辑”菜单有一些菜单项,可以显示各种内容,例如突出显示括号或显示“自动完成”列表。

这个 格式 菜单有很多有用的功能。它有一些有用的东西 缩进消除 您的代码,以及注释您的代码。当我测试代码时,我发现这非常有用。注释代码可能非常有用。一种有用的方法是当你有很多代码,你需要找出它为什么不能正常工作。注释掉部分内容并重新运行脚本可以帮助您找出哪里出错了。你只需要慢慢地把东西的注释掉,直到你碰到你的错误。这提醒了我;您可能注意到主 IDLE 屏幕有一个 调试器 菜单。

这对调试很好,但只在 Shell 窗口。遗憾的是,您不能在主编辑菜单中使用调试器。但是,您可以在调试打开的情况下运行模块,以便能够与程序的对象交互。例如,在试图确定循环中某个项的当前值的循环中,这很有用。如果您碰巧使用tkinter创建用户界面(ui),实际上可以离开 主循环() 取消(可以阻塞UI),以便调试用户界面。最后,当调试器运行时引发异常时,可以双击异常直接跳转到发生异常的代码。

如果您需要一个更通用的调试器,您应该找到一个不同的IDE,或者尝试在 pdb 类库。


什么是评论?

注释是一种让不可运行的代码记录您在代码中所做的操作的方法。每种编程语言都使用不同的符号来划分注释的开始和结束位置。但是,在Python中,注释是什么样子的?注释是以Octothorpe开头的任何内容(即哈希或磅符号)。以下是一些实际评论的示例:

# This is a comment before some code
print("Hello from Python!")
print("Winter is coming") # this is an in-line comment

你可以自己在一行上写评论,也可以跟在一句话后面,比如第二句。 打印 以上声明。python解释器忽略注释,因此可以在注释中编写任何您想要的内容。我见过的大多数程序员很少使用注释。但是,我强烈建议您不仅要为您自己使用注释,还要为将来可能需要维护或增强代码的任何其他人使用注释。当我回到6个月前写的一个脚本时,我发现我自己的注释很有用,我发现自己正在处理没有注释的代码,并希望它能做到,这样我就能更快地找到它。

好的注释示例包括对复杂代码语句的解释,或者在代码中添加对缩写词的解释。有时候你需要留下一个评论来解释为什么你做了某件事,因为这并不明显。


现在我们需要回顾一下idle的菜单选项:

这个 Run 菜单有几个方便的选项。您可以使用它来调出python shell,检查代码是否有错误,或者运行代码。选项菜单没有很多项。它确实有一个配置选项,允许您更改代码突出显示的颜色、字体和快捷键。除此之外,您还可以获得一个代码上下文选项,该选项有助于在编辑窗口中放置一个覆盖,该覆盖将显示您当前所在的类或函数。我们将在第一部分结尾处解释函数和类。每当函数中有大量代码,并且名称已从屏幕顶部滚动时,您会发现此功能非常有用。如果启用此选项,则不会发生这种情况。当然,如果函数太大而不能放在一个屏幕上,那么它可能会变得太长,是时候将该函数分解为多个函数了。设置对话框中的另一个整洁项位于 一般 选项卡,您可以在其中添加其他文档。这意味着您可以将URL添加到第三方文档中,例如sqlacalchemy或bellow,并将其置于 IDLE 状态。要访问新文档,只需跳到“帮助”菜单。

这个 Windows 菜单向您显示当前打开的窗口的列表,并允许您在它们之间切换。

最后但并非最不重要的是 Help 菜单,您可以在其中了解idle、获取idle本身的帮助或加载Python文档的本地副本。文档将解释每一段Python是如何工作的,并且在其覆盖范围内非常详尽。帮助菜单可能是最有用的,因为即使您没有连接到Internet,您也可以访问文档。您可以搜索文档,找到howtos,阅读任何内置库,并学习许多您可能会开始思考的内容。

其他提示

当您在下面的章节中看到代码示例时,您可以在 IDLE 状态下编写和运行它们。在我的python编程生涯的头几年里,我都是在 IDLE 状态下编写程序的,我对此非常满意。尽管有很多免费的python-ides,还有一些你必须付费的ides。如果你想便宜一点,你可以看看Eclipse+Pydev、Editra甚至记事本++。对于付费的IDE,我会推荐Wingware的IDE,或者可能是Pycharm。它们具有更多的特性,例如与代码存储库的集成、更好的调试程序、重构帮助等。

在本书中,我们将在示例中使用idle,因为它与Python一起提供了一个通用的测试台。我仍然认为idle拥有我使用过的任何IDE中最好、最一致的代码突出显示。代码突出显示在我的头脑中很重要,因为它有助于防止我使用Python的关键字(或内置的)之一作为变量名。如果您想知道,下面是这些关键词的列表:

and       del       from      not       while
as        elif      global    or        with
assert    else      if        pass      yield
break     except    import    print
class     exec      in        raise
continue  finally   is        return
def       for       lambda    try

让我们看看在python中键入一些东西时会发生什么:

_images/idle_code_colors.jpg

如你所见, IDLE 的颜色编码了所有的东西。关键字是品红色,字符串是绿色,注释是红色,打印函数的输出是蓝色。

总结

在本章中,我们学习了如何使用Python的集成开发环境idle。我们还学到了什么 评论 以及如何使用它们。在这一点上,您应该足够熟悉idle,以便在本书的其余部分中使用它。还有许多其他针对Python的集成开发环境(IDE)。有免费的,如pydev和editra,还有一些其他的你必须支付,如wingware和pycharm。还有一些用于常规文本编辑器的插件,允许您使用python编写代码。我认为 IDLE 是一个很好的开始,但是如果你已经有了一个最喜欢的编辑器,可以继续使用它。

现在,我们已经准备好继续学习Python的各种数据类型了。我们将在下一章中从字符串开始。