我最近开始用python编程,我在理解inet_nota
和inet_aton
如何在python中工作时遇到了一些困难。来自php/mysql,我总是将ip地址作为长变量存储在数据库中。而且mysql中的inet_ntoa
方法接收一个长变量作为参数并返回IP的点格式,因此我假设Python版本的工作方式与此类似。然而,Python的inet_ntoa
似乎需要32位压缩二进制格式。因此,将IP地址存储为167772160
值,如何将其转换为inet_ntoa
方法所需的32位压缩二进制值(如\x7f\x00\x00\x01
)?
非常感谢
Tags:
在Python 3.3+中(或者对于2.6和2.7使用this backport),您只需使用^{} :
或者,可以手动打包该值
你也可能对^{} 感兴趣。
作为这个线程的后期添加:如果您使用的是Python 3.3或更高版本,请查看ipaddress模块:它比
socket
等效模块的功能要多得多。相关问题 更多 >
编程相关推荐