返回介绍

使用交互提示模式

发布于 2024-01-29 22:24:17 字数 1917 浏览 0 评论 0 收藏 0

尽管交互提示模式简单易用,这里还有一些初学者需要牢记的技巧。在本章中,我列出了一些常见错误的列表以供参考,但是,如果你提前阅读它们的话,会帮助你避免一些令人头疼的问题。

·只能够输入Python命令。首先,记住只能在Python交互模式下输入Python代码,而不要输入系统的命令。这里有一些方法可以在Python代码中使用系统命令(例如,使用os.system),但是并不像简单的输入命令那么的直接。

·在文件中打印语句是必须的。在交互解释器中自动打印表达式的结果,不需要在交互模式下输入完整的打印语句。这是一个不错的特性,但是换成在文件中编写代码时,用户就会产生一些困惑:在文件中编写代码,必须使用print语句来进行输出,因为表达式的结果不会自动反应。记住,在文件中需要写print,在交互模式下则不需要。

·在交互提示模式下不需要缩进(目前还不需要)。当输入Python程序时,无论是在交互模式下还是在一个文本文件中,请确定所有没有嵌套的语句都在第一列(也就是说要在最左边)。如果不是这样,Python也许会打印"SyntaxError"的信息。在第10章以前,你所编写的所有的语句都不需要嵌套,所以这条法则目前都还适用。在介绍Python的初级课程时,这看起来也许会令人困惑。每行开头的空格也会产生错误的消息。

·留意提示符的变换和复合语句。我们在第10章之前不会见到复合(多行)语句,但是,为了预先有个准备,当在交换模式下输入两行或多行的复合语句时,提示符会发生变化。在简单的shell窗口界面中,交互提示符会在第二行及后边的行由>>>变成...;在IDLE界面中,第一行之后的行会被自动缩进。

在第10章中将看到这为什么如此重要。就目前而言,如果在代码中输入,偶然碰到...这个提示符或空行,这可能意味着让交互模式的Python误以为输入多行语句。试着点击回车键或Ctrl-C组合键来返回主提示模式。也可以改变>>>和...(它们在内置模块sys中定义),但是在本书的例子中,假定并没有改变过这两个提示符。

·在交互提示模式中,用一个空行结束复合语句。在交互提示模式中,要告诉交互式Python已经输入完了多行语句,必须要插入一个空行(通过在一行的起始处按下Enter键)。也就是说,你必须按下Enter键两次,才能运行一条复合语句。相反,在文件中空行是不需要的,并且如果有的话也将会忽略。在交互模式下工作的时候,如果你没有在一条复合语句的末尾两次按下Enter键,将会陷入到尴尬的境地,因为交互式解释器根本什么也不会做,它等着你再次按下Enter键。

·交互提示模式一次运行一条语句。在交互提示模式中,你必须运行完一条语句,然后才能输入另一条语句。对于简单语句来说,这很自然,因为按下Enter键就可以运行输入的语句。然而,对于复合语句,记住必须提交一个空行来结束该语句,然后运行它,之后才能够输入下一条语句。

输入多行语句

冒着重复自己的风险,在更新本章内容的时候,我收到了受最后两项错误伤害的读者的邮件,因此,这两项错误还是值得强调的。我将在下一章中介绍多行(即复合)语句,并且我们将在本书后面更正式地介绍其语法。由于它们在文件中和在交互提示模式中的行为略有不同,因此,这里有两点要注意。

首先,在交互提示模式中,注意像结束for循环和if测试那样,用一个空行结束多行复合语句。必须两次按下Enter键,来结束整个多行语句,然后让其运行。例如:

在脚本文件中,复合语句的后面不需要空行;只在交互提示模式下,才需要该空行。在文件中,空行不是必须的,如果出现了的话,将会直接忽略掉;在交互提示模式中,它们会结束多行语句。

还要记住,交互提示模式每次只运行一条语句:必须两次按下Enter键来运行一个循环或其他的多行语句,然后才能输入下一条语句:

这意味着不能在交互提示模式中复制并粘贴多行代码,除非这段代码的每条复合语句的后面都包含空行。这样的代码最好在一个文件中运行,下一小节将讨论这一话题。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文