[英]I don't understand boolean truths in Python
我寫了這段代碼( x
在此范圍之前通過str()
運行):
if x == "A" or "O":
return x
當x = B
時,返回B
有人可以幫我理解為什么x = B
在這里有效嗎?
當我改變我的代碼閱讀
if x == "A":
return x
elif x == "O":
return x
它與x = B
不匹配,所以我假設這里有一些布爾邏輯,我不理解。
if x == "A" or "O":
應該是if x == "A" or x == "O":
if x == "A" or "O":
將始終評估為true
。
if x == "A" or "O":
被解釋為:
if (x == "A") or ("O")
, "O"
為true
,那么即使x
不是"A"
,因為你有or
,這將永遠為true
。
或者你可以寫:
if x in ["A", "O"]:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.