当前位置: 首页 > 面试题库 >

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

凌蕴藉
2023-03-14
问题内容

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

例:

if n == 0:
    print "The end"

问题答案:

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

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

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

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

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

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

if a == b
    print a

if a == b:
    print a

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

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



 类似资料:
  • 问题内容: 我注意到很多jQuery插件都以 我只是想知道开始的分号是什么意思,以及末尾的空括号是什么。 问题答案: 如果您在某些“不良”脚本之后添加了该脚本,而该“不良”脚本无法正确地用分号结束其最后一行,则可以使用分号。在这种情况下,可能会合并两个脚本并导致代码无效。例如,如果要将多个脚本合并到一个响应中。 最后的()正在执行该函数。这正在创建一个关闭。可以在此函数的范围内声明私有变量和方法,

  • 问题内容: 操作数是什么意思,更具体地说是Python? 有人可以解释如何阅读此代码段吗? 问题答案: 更新的答案 在问题的上下文中,我们正在处理伪代码,但是从Python 3.8开始 ,它实际上是一个有效的运算符,它允许在表达式中分配变量: 有关更多详细信息,请参见PEP 572。 原始答案 您发现的是 伪代码 伪代码 是计算机程序或其他算法的工作原理的非正式高级描述。 实际上是赋值运算符。在P

  • 问题内容: 问题在标题中。以感叹号开头的shell命令(shell脚本的一部分)的目的是什么?具体示例: 在foo.sh中: 我知道没有空格,感叹号用于替换历史记录,并且根据手册页可用于评估“ expr为false时为True ”。但是在示例上下文中,这对我来说没有意义。 问题答案: TL; DR:这只是绕过您使用它的特定行中的标志。 在hek2mgl的正确和有用的答案中添加add 。 你有: B

  • 问题内容: 我正在学习如何将Redis用于我的项目。我没弄清楚的一件事是键名称中冒号的确切用途。 我看到过这样的键名: 冒号是否将密钥分为几类,从而使查找密钥的速度更快?如果是这样,您在命名键时可以使用多个冒号将它们划分为子类别吗?最后,它们与在Redis服务器中定义不同的数据库有关吗? 我已经阅读了文档,并对此事进行了大量Google搜索,但奇怪的是我找不到任何讨论此事的信息。 问题答案: 冒号

  • 问题内容: CSS 中的双冒号()是什么意思? 例如: 问题答案: 这意味着 伪元素 选择器。这意味着右边的 元素 在普通DOM中不存在,但是可以选择。 伪元素由两个冒号(::)组成,后跟伪元素的名称。 它最初只有一个冒号,而是改为从区分其 伪类 (如,,等)。最好使用for 和伪元素,因为单个冒号具有更好的浏览器支持,即在较早的IE版本中。

  • 问题内容: 我遇到以下代码: 这是什么做不?就此而言,那没有做什么呢? 问题答案: 此语法是切片分配。一片意味着整个列表。和之间的区别在于后者不会替换原始列表中的元素。当有两个引用列表时,这是可见的 要查看差异,只需从上面的分配中删除。 从字面上看,如果是变量名而不是内建函数,则将问题的标题替换为省略号