1
有一種解決方案可用於按位操作。但是,它轉換二進制數的整數,然後做按位操作。我已經有了二進制格式的數字。我如何執行這些數字的按位操作?例如, x = 10101,y = 11001 我希望z = x或y爲11101. 任何幫助都非常感謝。python中的按位操作
有一種解決方案可用於按位操作。但是,它轉換二進制數的整數,然後做按位操作。我已經有了二進制格式的數字。我如何執行這些數字的按位操作?例如, x = 10101,y = 11001 我希望z = x或y爲11101. 任何幫助都非常感謝。python中的按位操作
您可以將其轉換爲字符串,然後int(.., 2)
(2 => 2爲基數)的小數轉換爲二進制:
>>> str(x)
'10101'
>>> int(str(x), 2)
21
你想操作(|
=>按位或):
>>> int(str(x), 2) | int(str(y), 2)
29
然後,使用format
(或str.format
與格式字符串b
->表示二進制表示形式)和將其轉換回十進制3210:
>>> format(int(str(x), 2) | int(str(y), 2), 'b')
'11101'
>>> int(format(int(str(x), 2) | int(str(y), 2), 'b')) # back to integer
11101