我的应用程序需要通过网络发送和读取 IPv6 地址。它只会被我的应用程序读取,但我仍然想遵循约定。是否有这样做的库函数?
问问题
1250 次
1 回答
1
该socket
模块有一个功能,称为inet_pton。但是,它并非在所有平台上都可用。(它在我写这篇文章的 Windows 机器上不可用。)
我建议您使用名为ipaddr的非标准库。它有两个不太明显的功能,可以完全满足您的需求:
from ipaddr import ipaddr
raw = '\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
ip = ipaddr.IPv6Address(ipaddr.Bytes(raw))
print "IP is: " + str(ip)
original = bytes(ip.packed)
print "Original raw bytes: " + repr(original)
于 2012-11-22T07:29:45.373 回答