快速理论问题
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
语句。前两个没有关联的elif
或else
子句;第三个是CCD_ 11子句。