多个if语句之后的Else语句



快速理论问题

if x:
y
if a:
b
if 1:
2
else:
3

底部";否则";只影响最后一个if?

来自语法:

if_stmt ::=  "if" assignment_expression ":" suite
("elif" assignment_expression ":" suite)*
["else" ":" suite]

粗略地说,suite是一系列缩进的语句。因此,x是一个赋值表达式,而y是与第一个if相关联的套件。因为下一个令牌是if,所以它启动一个新的if语句,而不是以任何方式继续第一个if语句。

因此,您有三个独立的if语句。前两个没有关联的elifelse子句;第三个是CCD_ 11子句。

最新更新