您的位置:首页 > 编程语言 > Python开发

Python Network Programming(2)---地址转换函数

2015-12-19 11:28 791 查看
如果使用低层网络函数,有时普通的字符串形式的IP地址(点分十进制)并不是很有用,需要把它们转换成打包后的32位二进制格式。

inet_aton()—普通字符串的点分十进制–>32位二进制

inet_ntoa()—32位二进制格式–>点分十进制

__author__ = 'liyuan35023'

# !/home/mimiasd/PycharmProjects/workspace python27

import  socket
from binascii import hexlify

ip_addr_list=['127.0.0.1', '192.168.0.1']

def convert_ipv4_address():
for ip_addr in ip_addr_list:
packed_ip_addr = socket.inet_aton(ip_addr)
unpacked_ip_addr = socket.inet_ntoa(packed_ip_addr)
print 'IP Address: %s => Packed: %s, Unpacked: %s'\
%(ip_addr, hexlify(packed_ip_addr), unpacked_ip_addr)

if __name__ == '__main__':
convert_ipv4_address()


代码中还调用了
binascii
模块的
hexlify
函数,以十六进制的形式表示二进制数据。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: