[英]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按位運算符:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.