python ipaddr_python之IP地址或IP段处理模块-ipaddr

python处理IP和IP段的模块基本有两个:IPy与ipaddr

IPy基本处理8位、16位、24位掩码的网段,其他的网段处理起来就会出现问题。

ipaddr是google出的一个模块,很好的可以处理模块IPy不能解决这个问题,所以建议使用模块ipaddr!

使用介绍:

Class总共分为:

ipaddr.IPv4Network() ipv4网段对象建立

ipaddr.IPv6Network() ipv6网段对象建立

ipaddr.IPAddress(address, version) 单个ipv4地址对象建立

部分对象方法描述:

Contains() 网段中是否包含某个IP

is_private 是否是私网地址

is_multicast 是否是广播地址

is_loopback 是否是loop地址

IsLoopback 是否是回环地址

IsMulticast 是否是多播地址

broadcast 查看广播地址

hostmask 查看子网掩码

iterhost 创建一个网段中一个IP地址列表的迭代器对象

is_reserved 是否是保留地址

实例讲解:

#!/usr/bin/python

### 引入模块

import ipaddr

MIP = "192.168.1.0/29"

### 创建一个网段的对象,ipv4的网段地址

ips = ipaddr.IPNetwork(MIP)

### 查看对象ips的类型

print type(ips)

### 查看网段的广播地址

print ipaddr.IPv4Network(MIP).broadcast

### 查看网段地址的掩码

print ipaddr.IPv4Network(MIP).hostmask

### 创建一个网段中一个IP地址列表的迭代器对象

hosts = ipaddr.IPv4Network(MIP).iterhosts()

### 使用循环读取对象中的每个IP

print type(hosts)

for IP in hosts:

print IP

原文:http://zhpfbk.blog.51cto.com/4757027/1885797

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值