为什么bool([]) = =假而[]= =假是假的,不是真的在python中布尔逻辑



我刚刚开始学习Python,我正在尝试这个

[] == False #False 

但:

bool([]) #False

从我得到的值像[],0…是我到底错过了什么,谢谢!

操作符==是非常字面化的。如果你比较的两件事不完全相同(这包括类型,如"2" == 2False),那么结果将始终是False。因此,布尔值False与空列表[]并不完全相同,这就是为什么[] == FalseFalse

空列表将被视为"False"当转换为布尔值时,就像bool([])一样。因此,bool([])的输出是False,字面上与False相同。因此,bool([]) == False就是True

[] != False, butbool([]) == bool(False).