簡體   English   中英

python添加二進制數

[英]python adding binary number

當我在Python 3中處理二進制數時,有一個意外的輸出。

我們可以通過內置的bin()函數輕松地將任何整數轉換為二進制。 例如:

>>>bin(4243125)

這是我嘗試添加2個二進制函數時的問題:

>>>bin(x)+bin(y)

輸出是兩個二進制數的串聯,而不是二進制數的加法。 二進制函數的輸出已成為字符串。

二進制函數中的加法工作正常:

>>>bin(x+y)

並嘗試添加兩個沒有bin()的二進制數也是可行的:

>>>0b100+0b10111

將bin()輸出設置為字符串的原因/目的是什么?

bin ,與hex一樣,將十進制轉換為表示該基數中的數字的字符串文字。

如果要一起添加2個數字,只需這樣做:

x = 10
y = 2
x + y

如果你想將二進制字符串作為輸入並將它們一起添加,則使用int base 2將它們從字符串文字轉換回來,如下所示:

x = bin(10)
y = bin(2)
int(x, 2) + int(y, 2)

如果您正在尋找按位運算,請查看Python按位運算符:

https://wiki.python.org/moin/BitwiseOperators

暫無
暫無

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

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