Python不不会有拖尾if 声明。ifPython 有两种:if 声明:if condition: statementif condition: blockif 表达式(在Python 2.5中引入)expression_if_true if condition else expression_if_false请注意,两者print a和b = a都是陈述。只有a一部分是表达。所以如果你写print a if b else 0它的意思是print (a if b else 0)当你写的时候x = a if b else 0它的意思是x = (a if b else 0)现在,如果没有else子句,它将打印/分配什么?打印/分配仍然在那里。请注意,如果您不希望它存在,您总是可以if在一行中编写常规语句,尽管它的可读性较差,并且实际上没有理由避免使用两行变体。