Python Network Programming(2)---地址转换函数
2015-12-19 11:28
791 查看
如果使用低层网络函数,有时普通的字符串形式的IP地址(点分十进制)并不是很有用,需要把它们转换成打包后的32位二进制格式。
inet_aton()—普通字符串的点分十进制–>32位二进制
inet_ntoa()—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函数,以十六进制的形式表示二进制数据。
相关文章推荐
- Python: easy_install & pip 下载PyPi 公共资源库的工具
- [python]Numpy快速入门
- 安装python的图形处理库: pillow
- Python 基础【第七篇】集合
- 用conda管理Python包
- python数据类型详解
- 最大似然估计(MLE)的一些公式与定理(python实践)
- 再看Python.第2天
- 再看Python.第1天
- My way to Python - Day06 socket基础
- Python 面向对象 三
- Python 面向对象 四
- 一入Python深似海--print
- python sqlalchemy-migrate 使用方法
- python 遍历hadoop, 跟指定列表对比 包含列表中值的取出。
- python之类--socket
- python学习笔记之基础一(第一天)
- Python单例模式的4种实现方法
- python 计算一年内的所有周的具体日期
- numpy 辨异 (五)—— numpy.ravel() vs numpy.flatten()