的Python:打印“字”,在[] ==假
答
就像你可以在23 < x < 42
连锁经营,你可以做到这一点与in
和==
。
"word" in []
是False
和 [] == False
评估为False
。因此,整个结果是
"word" in [] == False
"word" in [] and [] == False
False and False
False
答
我想补充马克拜尔斯伟大的答案
>>> import dis
>>> dis.dis(lambda: 'word' in [] == False)
1 0 LOAD_CONST 1 ('word')
3 BUILD_LIST 0
6 DUP_TOP
7 ROT_THREE
8 COMPARE_OP 6 (in)
11 JUMP_IF_FALSE_OR_POP 21
14 LOAD_GLOBAL 0 (False)
17 COMPARE_OP 2 (==)
20 RETURN_VALUE
>> 21 ROT_TWO
22 POP_TOP
23 RETURN_VALUE
>>> dis.dis(lambda: ('word' in []) == False)
1 0 LOAD_CONST 1 ('word')
3 LOAD_CONST 2 (())
6 COMPARE_OP 6 (in)
9 LOAD_GLOBAL 0 (False)
12 COMPARE_OP 2 (==)
15 RETURN_VALUE
你有问题吗? – Johnsyweb
如果您希望输出“True”,则需要在parens中将[]'中的单词'分组:'print(“word”in [])== False' – GreenMatt
与布尔值相比毫无意义。 –