两种表单value not in list
和not value in list
会返回相同的结果。
它们是等同的还是比另一个好?
>>> l=[1,2,3]
>>> 1 not in l
False
>>> not 1 in l
False
>>> 5 not in l
True
>>> not 5 in l
True
答案 0 :(得分:1)
我会说value not in list
因为可读性而更好。 not value in list
令人困惑。代码应尽可能可读。
答案 1 :(得分:1)
来自http://docs.python.org/2/reference/expressions.html#not-in:
如果x是集合s的成员,则s中的x计算结果为true,否则为false。 x不在s中返回s
中x的否定
因此,x not in s
确实与not x in s
相同。一个人是否优于另一个是风格问题;就个人而言,我会说x not in s
读得更好。