簡體   English   中英

為什么 bool([]) == False 而 [] == False 是 False 而不是 Python 布爾邏輯中的 True

[英]Why is bool([]) == False while [] == False is False and not True in python boolean logic

我剛剛開始學習 Python,我正在嘗試這個

[] == False #False 

但 :

bool([]) #False

從我得到的值,如 [],0 .. 是False我到底錯過了什么,謝謝!

[] != False ,但bool([]) == bool(False)

運算符==非常字面。 如果您要比較的兩件事不完全相同(這包括類型,例如"2" == 2 is False ),那么結果將始終為False 所以布爾值False與空列表[]的字面意思不同,這就是為什么[] == FalseFalse的原因。

當轉換為布爾值時,空列表僅被視為“False”,您使用bool([])進行了此操作。 所以bool([])的輸出是False ,這實際上與False相同。 因此bool([]) == FalseTrue

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM