一尘不染

在Python中执行块之前冒号的目的是什么?

python

在Python中执行块之前冒号的目的是什么?

例:

if n == 0:
    print "The end"

阅读 191

收藏
2020-12-20

共1个答案

一尘不染

冒号用于声明缩进块的开始。

从技术上讲,这是没有必要的;您可以在程序段完成后缩进和缩进。但是,基于Python
koan的
“显式胜于隐式”(EIBTI),我相信Guido故意使冒号成为强制性的,因此,
任何 在缩进代码后跟随的语句均以冒号结尾。(如果您继续在冒号后面继续,它还允许单线,但是这种样式并未得到广泛使用。)

这也使识别语法的自动缩进编辑器的工作更加轻松,这也被纳入决策。


这个问题原来是Python FAQ,我在这里找到了Guido的答案之一:

为什么if / while / def / class语句需要冒号?

主要需要使用冒号来增强可读性(实验性ABC语言的结果之一)。考虑一下:

if a == b
    print a

if a == b:
    print a

请注意,第二个稍微更易于阅读。请进一步注意冒号是如何引起该FAQ回答中示例的;这是英语的标准用法。

另一个次要原因是冒号使使用语法高亮显示的编辑者更加容易。他们可以寻找冒号来决定何时增加缩进量,而不必对程序文本进行更复杂的解析。

2020-12-20