首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python中的二进制数

Python中的二进制数
EN

Stack Overflow用户
提问于 2018-09-04 03:58:18
回答 2查看 0关注 0票数 0

如何在Python中添加,减去和比较二进制数而不转换为十进制?

EN

回答 2

Stack Overflow用户

发布于 2018-09-04 12:06:45

我觉得你对二进制是什么感到困惑。二进制和十进制只是数字的不同表示 - 例如101个基数2和5个基数10是相同的数字。对数字进行加法,减法和比较操作 - 101 base 2 == 5 base 10,无论你使用什么基础,加法都是相同的逻辑运算。你的python解释器可以在内部存储二进制的事实这会影响你如何使用它 - 如果你有一个整数类型,只需使用+, - 等。

如果你有二进制数字字符串,你必须编写自己的实现或使用int(binaryString,2)函数转换它们。

票数 0
EN

Stack Overflow用户

发布于 2018-09-04 13:21:46

下面是对以前发布的函数的重写:

代码语言:javascript
复制
def addBinary(a, b): # Example: a = '11' + b =' 100' returns as '111'.    
    for ch in a: assert ch in {'0','1'}, 'bad digit: ' + ch    
    for ch in b: assert ch in {'0','1'}, 'bad digit: ' + ch    
    sumx = int(a, 2) + int(b, 2)    
    return bin(sumx)[2:]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100002551

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档