python添加二进制数

时间:2014-08-03 15:08:14

标签: python python-3.x binary

当我在Python 3中处理二进制数时,会出现意外的输出。

我们可以通过内置的bin()函数轻松地将任何整数转换为二进制。例如:

>>>bin(4243125)

这是我尝试添加2个二进制函数时的问题:

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

输出是两个二进制数的串联,而不是二进制数的加法。二进制函数的输出已成为一个字符串。

在二进制函数中添加正常工作:

>>>bin(x+y)

尝试添加两个没有bin()的二进制数也是可行的:

>>>0b100+0b10111

将bin()输出设置为字符串的原因/目的是什么?

1 个答案:

答案 0 :(得分:4)

binhex一样,将小数转换为表示该基数中的数字的字符串文字。

如果您想要将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