将二进制数转换为整数

问题描述 投票:-1回答:2

我最近开始学习Python。我在理解这一点时遇到问题:

print(int('0b101', 2))

我知道这是一个二进制数字,将被转换为整数。但是为什么底数应该是2?有人可以解释这个基础是什么吗?谢谢

python binary base
2个回答
0
投票

它表示您的字符串当前所在的数字系统。在二进制系统中,只有两位数字,即1和0。以十进制表示,您有10,即0-9。

[在Programiz上查看几个示例here

我希望它能清除某些东西!


0
投票

如果没有给出基数,则int 默认值以10为基数,而不是试图猜测字面量是什么基数。例如,0b101也是有效的十六进制字面量:

>>> int('0b101', 16)
45313
>>> int('0xb101', 16)
45313

[如果您不希望将其视为10的基数,则必须明确说明应该的处理方式。

>>> int('0b101', 2)
5
© www.soinside.com 2019 - 2024. All rights reserved.