我試圖實現以下目標。我寫了代碼或字符串的值並計算字符串中1的個數。Python字符串到布爾轉換在所有情況下均爲真
a='11001'
b='00111'
a and b
'00111'
a or b
11001
有人可以解釋這是如何工作的。我期待的答案是,當我做a and b
,結果應該是00001
,當我做a or b
,我應該得到,邏輯and
和or
。
我明白,非空字符串在所有情況下均爲True。所以我可以解釋上述行爲,認爲我不明白如何實現布爾值and
和or
在此先感謝。
因爲所有非空字符串都是'True'。你正在尋找不會被魔法發生的位操作。你需要明確地執行它們。 – IanAuld
順便說一句,要計算一個由0和1組成的字符串中的'1'的數量,你有一個更簡單的方法:'sum(int(c)for c in「0001111」)' – spectras
@Annapoornima標題對於這個問題是錯誤的和誤導性的,請解決它。問題是關於:表示二進制數字符串的按位操作 – AndresR