您的位置:

Python 转二进制

一、基础知识

Python 是一种高级编程语言,其中内置了许多强大的函数和库,便于程序员进行快速的开发和部署。在 Python 中,转二进制是一个非常基础的功能,我们可以使用内置的 bin() 函数来进行转换。


num = 10
binary = bin(num)
print(binary) # 输出 0b1010

在上述例子中,我们使用 bin() 函数将 num 转换为二进制,返回的结果为一个字符串 "0b1010"。

需要注意的是,bin() 函数会将整数转换为二进制字符串,并在字符串前面加上 "0b" 的标识符,表示这是一个二进制字符串。

二、进制转换

在 Python 中,我们也可以使用其他内置函数来进行不同进制之间的转换,比如 oct() 函数和 hex() 函数,分别用于将十进制整数转换为八进制和十六进制。


num = 10
octal = oct(num)
hexadecimal = hex(num)
print(octal) # 输出 0o12
print(hexadecimal) # 输出 0xa

在上述例子中,我们使用 oct() 函数将 num 转换为八进制(返回字符串 "0o12"),使用 hex() 函数将 num 转换为十六进制(返回字符串 "0xa")。

三、自定义转换

除了内置函数之外,我们也可以自己编写 Python 代码来进行转二进制操作。下面是一个将十进制整数转换为二进制字符串的函数。


def dec2bin(num):
    s = ''
    while num > 0:
        if num % 2 == 0:
            s = '0' + s
        else:
            s = '1' + s
        num //= 2
    return '0b' + s
    
num = 10
binary = dec2bin(num)
print(binary) # 输出 0b1010

在上述例子中,我们定义了一个函数 dec2bin(),它接受一个十进制整数作为参数,将这个整数转换为二进制字符串。具体来说,我们先将 s 初始化为空字符串,然后不断地判断 num 的二进制位,将其添加到 s 的前面,直到 num 小于等于 0 时停止循环。最后将字符串 "0b" 添加到 s 的前面,并返回结果。

四、结语

本文介绍了 Python 中转二进制的基础知识、进制转换函数和自定义转换函数。无论是使用内置函数还是自定义函数,转换十进制到二进制都非常容易,希望这篇文章对你有所帮助。