[] == ! [] 为什么返回 true ?


在Python中,[] 是一个空的列表,而 not [] 则表示对空列表进行逻辑非运算。在Python中,空的列表被视为逻辑假(False),所以 not [] 的结果是 True

这是因为在Python中,空的容器对象(例如空列表、空字典、空集合等)在布尔上下文中被视为假,而 not 运算符会反转这个逻辑值。

因此,[] == not [] 实际上等价于 [] == True,而在Python中,空列表与布尔值 True 不相等,所以表达式的结果是 False

如果你想要检查列表是否为空,应该使用 not 运算符与 [] 的比较,而不是 == 运算符。例如:

if not []:
    print("列表为空")
else:
    print("列表不为空")

这将输出 "列表为空"。


原文链接:codingdict.net