>> False in [False, True] True 返回 True。仅仅因为 False 在列表中。 但如果我这样做: >>> not(True) in [False, T-6ren">
gpt4 book ai didi

python - 为什么 "not(True) in [False, True]"返回 False?

转载 作者:IT老高 更新时间:2023-10-28 12:02:29 25 4
gpt4 key购买 nike

如果我这样做:

>>> False in [False, True]
True

返回 True。仅仅因为 False 在列表中。

但如果我这样做:

>>> not(True) in [False, True]
False

返回 False。而 not(True) 等于 False:

>>> not(True)
False

为什么?

最佳答案

运算符优先级 2.x , 3.x not 的优先级低于in。所以相当于:

>>> not ((True) in [False, True])
False

这就是你想要的:

>>> (not True) in [False, True]
True

正如@Ben 指出的那样:建议永远不要写not(True),更喜欢not True。前者使它看起来像一个函数调用,而 not 是一个运算符,而不是一个函数。

关于python - 为什么 "not(True) in [False, True]"返回 False?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31421379/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com