为什么我们不能在三元语句中使用 "pass"?
Why can't we use "pass" in a ternary statement?
这里有一些简单的我认为我可以逃脱的东西:
foo = True
print('bar') if foo else pass
产生:
SyntaxError: invalid syntax
当然,我可以将 pass
替换为 None
,这样就可以了。我只是好奇:为什么作业没有通过?
pass
是语句而不是表达式。
表达式几乎可以在任何地方使用。
大多数语句都有其特殊的语法,通常单独占一行。
有关两者区别的更多信息,请参阅this answer。
你可以在一行中执行此操作,因为 else 什么都不做,不需要 else 块。
foo = True
if foo : print('bar')
这里有一些简单的我认为我可以逃脱的东西:
foo = True
print('bar') if foo else pass
产生:
SyntaxError: invalid syntax
当然,我可以将 pass
替换为 None
,这样就可以了。我只是好奇:为什么作业没有通过?
pass
是语句而不是表达式。
表达式几乎可以在任何地方使用。
大多数语句都有其特殊的语法,通常单独占一行。
有关两者区别的更多信息,请参阅this answer。
你可以在一行中执行此操作,因为 else 什么都不做,不需要 else 块。
foo = True
if foo : print('bar')