其他答案已经向您表明,该行为是由于运算符的优先级所致,如此处所述。
下次您遇到类似问题时,我将向您展示如何找到答案。您可以使用以下
ast模块来解构表达式的解析方式:
>>> import ast>>> source_pre = '(1,) == 1,'>>> print(ast.dump(ast.parse(source_pre), annotate_fields=False))Module([Expr(Tuple([Compare(Tuple([Num(1)], Load()), [Eq()], [Num(1)])], Load()))])
从中我们可以看到代码已按照TimPeters的解释进行了解析:
Module([Expr( Tuple([ Compare( Tuple([Num(1)], Load()), [Eq()], [Num(1)] ) ], Load()))])
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)