python网络编程——将IPv4地址转换成不同的格式
1.将IPv4地址转换为32位二进制格式,用做底层网络函数。
import socket
from binascii import hexlify def convert_IPv4_address(): # 定义convert_IPv4_address()函数
for ip_addr in ['127.0.0.1', '192.168.0.1']:
packed_ip_addr = socket.inet_aton(ip_addr) # 将对应的IP地址转换为32—bit的封装包
unpacked_ip_addr = socket.inet_ntoa(packed_ip_addr) # 将对应的32-bit的封装包转换为IP地址的标准点号分隔字符串
print("IP Address: %s => packed: %s, Unpacked: %s" % (ip_addr, hexlify(packed_ip_addr), unpacked_ip_addr)) if __name__ == '__main__':
convert_IPv4_address()
2. .inet_aton()和inet_ntoa()及hexlify()解释
def inet_aton(string): # real signature unknown; restored from __doc__
"""
inet_aton(string) -> bytes giving packed 32-bit IP representation Convert an IP address in string format (123.45.67.89) to the 32-bit packed
binary format used in low-level network functions.
"""
return b""
"""将ip地址的4段地址分别进行2进制转化,输出用16进制表示
>>> import socket
>>> from binascii import hexlify
>>> a = socket.inet_aton('192.168.1.1')
>>> c= hexlify(a)
>>> c
b'c0a80101'
""" def inet_ntoa(packed_ip): # real signature unknown; restored from __doc__
"""
inet_ntoa(packed_ip) -> ip_address_string Convert an IP address from 32-bit packed binary format to string format
"""
pass
"""转换32位打包的IPV4地址转换为IP地址的标准点号分隔字符串表示。""" def hexlify(data): # known case of binascii.hexlify
"""
Hexadecimal representation of binary data. The return value is a bytes object.
"""
return b""
"""用十六进制形式表示二进制"""
python网络编程——将IPv4地址转换成不同的格式的更多相关文章
- python2.7_1.4_将IPV4地址转换成不同的格式
代码如下: # -*- coding: utf-8 -*- import socket from binascii import hexlify def convert_ip4_address(): ...
- UNIX网络编程——名字与地址转换(gethostbyname,gethostbyaddr,getservbyname,getservbyport,getaddrinfo,getnameinfo函数)
名字和数值地址间进行转换的函数:gethostbyname和gethostbyaddr在主机名字与IPv4地址之间进行转换.getservbyname和getservbyport在服务器名字和端口号之 ...
- python - django 将图片路径地址转换成 InMemoryUploadedFile 并存储数据库
# 问题场景:对接第三方时遇到一个图片存储问题,对方给的是他们服务器的图片路径地址,但是 我这里存储图片用的是 ImageField 字段属性,也设置了存储路径,现在一旦将图片显示到前端就会将设置的 ...
- Python网络编程(2)——socket模块(2)
目录: 1. 异常 2. 地址族 3. 套接字类型 4. 模块方法 5. Socket对象与实例方法 socket模块提供了Python中的低层网络连接接口,用于操作套接字操作. 异常 socket模 ...
- python网络编程应用(一)
在之前的一篇博客<python网络编程基础>中介绍了socket.socket()函数及其应用,其实socket模块中还有很多属性可供网络应用程序使用.这里将详细讲解一下socket模块 ...
- python 网络编程 TCP/IP socket UDP
TCP/IP简介 虽然大家现在对互联网很熟悉,但是计算机网络的出现比互联网要早很多. 计算机为了联网,就必须规定通信协议,早期的计算机网络,都是由各厂商自己规定一套协议,IBM.Apple和Micro ...
- python 网络编程:socket
在学习socket之前,我们先复习下相关的网络知识. OSI七层模型:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层.OSI七层模型是由国际标准化组织ISO定义的网络的基本结构,不仅包括一 ...
- 图解Python网络编程
返回目录 本篇索引 (1)基本原理 (2)socket模块 (3)select模块 (4)asyncore模块 (5)asynchat模块 (6)socketserver模块 (1)基本原理 本篇指的 ...
- Python网络编程之网络基础
Python网络编程之网络基础 目录 Python网络编程之网络基础 1. 计算机网络发展 1.1. OSI七层模型 1.2. 七层模型传输数据过程 2. TCP/IP协议栈 2.1 TCP/IP和O ...
随机推荐
- 关于crontab笔记
如下所示,一般crontab文件里面的定时任务格式如下所示: 59 23 * * * /home/oracle/scripts/alert_log_archive.sh >/dev/null 2 ...
- 源码安装rsyslog
<pre name="code" class="html">下载下列软件 json-c-0.12-20140410.tar.gz---------- ...
- zzbank oneOpencloud Env linuxaix6.1 interactiveMaintain(nfs,aix genintall基于系统iso光盘,aix6.1 puppet-Agent,Cent6.4 puppetServer,agent time no syn case Er)
1,puppet--server,Client,Agent time no syn case eror puppet agent --server frontend -terr: Could not ...
- Java内存模型-jsr133规范介绍
原文地址:http://www.cnblogs.com/aigongsi/archive/2012/04/26/2470296.html; 近期在看<深入理解Java虚拟机:JVM高级特性与最佳 ...
- API和DLL
API API(Application Programming Interface,应用编程接口)其实就是操作系统留给应用程序的一个调用接口,应用程序通过调用操作系统的 API 而使操作系统去执行应用 ...
- UVa 12299 RMQ with Shifts(线段树)
线段树,没了.. ----------------------------------------------------------------------------------------- # ...
- openGL 旋转的图形 矩阵操作
#include <windows.h> #ifdef __APPLE__ #include <GLUT/glut.h> #else #include <GL/glut. ...
- UVA 10798 - Be wary of Roses (bfs+hash)
10798 - Be wary of Roses You've always been proud of your prize rose garden. However, some jealous f ...
- 关于asp.net 的一些好资料地址 , 防止丢失!
学习数据结构的好网站 : http://student.zjzk.cn/course_ware/data_structure/web/practice/practice1.htm http://www ...
- css中z-index属性(标签层叠次序)
定义和用法 z-index 属性设置元素的堆叠顺序.拥有更高堆叠顺序的元素总是会处于堆叠顺序较低的元素的前面. 注释:元素可拥有负的 z-index 属性值. 注释:Z-index 仅能在定位元素上奏 ...