在 Python 中转换二进制为 Int

Manav Narula 2021年2月7日
在 Python 中转换二进制为 Int

在计算机科学的世界里,我们经常处理二进制和十进制的整数值。二进制值的基数是 2,十进制值的基数是 10。

在本教程中,我们将学习如何在 Python 中把二进制转换为整数。

在 Python 中,二进制值的表示方法是在二进制表示前加上 0b。它自动将二进制转换为整数值,如下图所示。

a = 0b101
print(a)

输出:

5

int 函数也可以实现同样的结果。我们需要传递数字及其基数来将其转换为整数(记住,二进制值的基数是 2)。

a = int('101',2)
print(a)

输出:

5

最近版本的 Python 中的 fstrings 是一种新的高效的格式化字符串的方法。我们可以使用它们来进行这样的二进制到整数的转换,如下所示。

print(f'{0b101:#0}')

输出:

5

这里 0b101 是二进制数,#0 用于指定它要转换为十进制值。

我们还可以创建一个小的用户定义函数,也可以将二进制值转换为整数。以下代码段显示了如何转换。

def binary2int(binary): 
    int_val, i, n = 0, 0, 0
    while(binary != 0): 
        a = binary % 10
        int_val = int_val + a * pow(2, i) 
        binary = binary//10
        i += 1
    print(int_val) 
    

binary2int(101)

输出:

5
Author: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

相关文章 - Python Binary

相关文章 - Python Integer