要将 Python 中的二进制数转换为 IP 地址,您需要将二进制数分成四个 8 位组(即四个字节),然后将每个字节转换为其对应的十进制数,最后将这四个数字组合在一起形成 IP 地址。
以下是一个示例代码,它将一个 32 位的二进制数转换为 IP 地址:
binary = '11000000101010000000000100000001' # 32位二进制数
bytes_list = [binary[i:i+8] for i in range(0, 32, 8)] # 将二进制数分成四个8位组
decimal_list = [int(byte, 2) for byte in bytes_list] # 将每个8位组转换为十进制数
ip_address = '.'.join(str(decimal) for decimal in decimal_list) # 将四个十进制数组合在一起形成IP地址
print(ip_address) # 输出IP地址,例如:192.168.1.33
在上面的代码中,我们将一个 32 位的二进制数存储在变量 binary
中,并将其分成四个 8 位组存储在 bytes_list
中。然后,我们使用 int()
函数将每个 8 位组转换为十进制数,并将其存储在 decimal_list
中。最后,我们将这四个十进制数用点号 .
连接起来,形成 IP 地址,并将其存储在 ip_address
中。
需要注意的是,上述代码中的二进制数是字符串形式,如果您的二进制数是一个整数,您需要使用 bin()
函数将其转换为二进制字符串。例如:
binary = bin(3232235777)[2:] # 将整数3232235777转换为二进制字符串,并去掉开头的'0b'
希望这个例子可以帮助您将 Python 中的二进制数转换为 IP 地址。