如何用Python 使二进制转换为十进制

如何用Python 使二进制转换为十进制

作者:William Gu发布时间:2026-01-15阅读时长:0 分钟阅读次数:5

用户关注问题

Q
Python中有哪些方法可以将二进制数转换为十进制?

我想用Python代码将二进制数字转换成对应的十进制数,有哪些函数或者方法可以实现?

A

使用内置函数int实现二进制转十进制

Python的int函数可以将二进制字符串转换成十进制数字。示例代码:decimal_number = int('1010', 2),这里'1010'是二进制字符串,2表示这是二进制,结果decimal_number将是10。

Q
如何处理带有前缀的二进制字符串转换为十进制?

如果二进制字符串带有'0b'前缀,使用Python转换时需要注意什么?

A

去除'0b'前缀后使用int函数

当二进制字符串带有'0b'前缀时,int函数依然可以处理,直接使用int('0b1010', 2)也能正确转换。如果是用户输入的字符串,确保字符串格式正确即可。

Q
能否用Python实现手动转换二进制到十进制而不依赖内置函数?

我想自己实现二进制转十进制的算法,不用int函数,要怎么写代码?

A

遍历二进制字符串逐位计算转换结果

可以用for循环遍历二进制字符串,从右往左计算每位数字乘以2的对应幂次,并累加。示例如下:

binary_str = '1010'
result = 0
for i, digit in enumerate(binary_str[::-1]):
result += int(digit) * (2 ** i)
print(result) # 输出10