天天看点

《Python参考手册(第4版•修订版)》——第2章 词法约定和语法 2.1 行结构和缩进

本节书摘来自异步社区《python参考手册(第4版•修订版)》一书中的第2章,第2.1节,作者david m. beazley,更多章节内容可以访问云栖社区“异步社区”公众号查看。

本章介绍python程序的词法和语法约定。本章涉及的主题包括行结构、语句分组、保留字、字面量、运算符、标记和源代码编码。

程序中的每条语句都以换行符结束。使用续行符()可将长语句分为几行,如下所示:

三引号字符串、列表、元组或字典的定义如果跨越多行,是可以不使用续行符的。一般来说,包含在圆括号(...)、方括号[...]、大括号{...}或三引号中的任意程序部分都可以放在多行上,而不需要使用续行符,因为它们清晰地表示出了定义的开始和结束。

缩进用于表示不同的代码块,如函数、条件语句、循环和类的主体。代码块中首条语句的缩进量可以是任意的,但整个代码块中的缩进必须保持一致,例如:

如果函数、条件语句、循环或类的主体较短,只包含一条语句,就可以将其放在同一行上,例如:

要表示一个空的主体或代码块,可使用pass语句,例如:

尽管可以用制表符进行缩进,但并不鼓励这样做。python编程社区的首选是用空格(而且也鼓励你这样做)。遇到制表符时,系统会将其转换为移到下一个为8倍数的列所需的空格量(例如,如果一个制表符出现在第11列中,那么系统会填充足够多的空格以移到第16行)。如果运行python时使用-t选项,那么在同一程序代码块中发现有制表符和空格混用的情况时,就会显示警告信息。使用-tt选项可将这些警告信息转换为taberror异常。

要在一行上放置多条语句,可以使用分号(;)隔开各条语句。如果一行上只有一条语句,也可以使用分号结尾,但这是不必要的。

<code>#</code>字符表示此行的内容都是注释,但出现在引号字符串中的<code>#</code>号无此作用。

最后,除非是在交互模式下运行,否则解释器将忽略所有空白行。在交互模式下,如果输入一条多行语句,空白行即表示输入结束。