在Python中有没有将IP地址转换为十进制数的函数?

6 投票
1 回答
4794 浏览
提问于 2025-04-16 22:02

有没有什么函数、接口或者方法可以把带点的IP地址字符串转换成十进制数字?

1 个回答

16

我不太确定你想要的十进制数字是什么,但你可以看看 socket.inet_aton 这个函数。它会给你一个字符串,里面是IP地址的二进制表示,按照网络字节顺序排列。如果你想把它转换成一个普通的整数,可以使用 struct.unpack,根据你需要的字节顺序选择 "!I""I"

举个例子:

import socket, struct
print struct.unpack("!I", socket.inet_aton("127.0.0.1"))[0]

输出结果是: 2130706433

撰写回答