漂亮的打印版ipy的ipsets

prettyip的Python项目详细描述


漂亮的印刷品IPy的ipset以人类可读的方式。

https://coveralls.io/repos/djmitche/prettyip/badge.svg?branch=masterhttps://travis-ci.org/djmitche/prettyip.svg?branch=master

兼容性

无论IPy在哪里运行,cpython-2.6到3.4也是如此。

用法

明确:

from IPy import IPSet, IP
import prettyip

my_ipset = IPSet([IP('10.0.0.0/8')]) - IPSet([IP('10.0.1.2')])
print prettyip.pretty_ipset(my_ipset)

或者,猴子补丁IPy

import prettyip

prettyip.patch_ipy()

my_ipset = IPSet([IP('10.0.0.0/8')]) - IPSet([IP('10.0.1.2')])
print my_ipset

结果

简单IP:

 >>> prettyip.pretty_ipset(IPSet([IP('10.0.0.0/8')]))
'10.0.0.0/8'

范围:

>>> IPSet([IP('10.120.13.11'), IP('10.120.13.12/30'), IP('10.120.13.16')])
IPSet([IP('10.120.13.11'), IP('10.120.13.12/30'), IP('10.120.13.16')])
>>> prettyip.pretty_ipset(_)
'10.120.13.1{1-6}'

缺少较小块的大网锁:

 >>> IPSet([IP('1.0.0.0/8')]) - IPSet([IP('1.0.1.0/24')]) - IPSet([IP('1.0.9.0/24')])
 IPSet([IP('1.0.0.0/24'), IP('1.0.2.0/23'), IP('1.0.4.0/22'),
    IP('1.0.8.0/24'), IP('1.0.10.0/23'), IP('1.0.12.0/22'), IP('1.0.16.0/20'),
    IP('1.0.32.0/19'), IP('1.0.64.0/18'), IP('1.0.128.0/17'),
    IP('1.1.0.0/16'), IP('1.2.0.0/15'), IP('1.4.0.0/14'), IP('1.8.0.0/13'),
    IP('1.16.0.0/12'), IP('1.32.0.0/11'), IP('1.64.0.0/10'),
    IP('1.128.0.0/9')])
 >>> prettyip.pretty_ipset(_)
'1.0.0.0/8 except 1.0.1.0/24, 1.0.9.0/24'

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
从FXML转换为JAVA时,不会加载javafx映像   泛型Java模板调用运行时推断   javascript为什么我的活动没有响应我在样式文件中所做的更改?   如何在HttpClient(java、apache)中自动重定向   java CSV到H2字符编码不匹配   在Java中使用BorderLayout按比例调整用户界面大小   Java中的重定向异常   java RecyclerView搜索过滤器仅过滤一个值   java标准api multiselect与count和distinct不起作用   java为什么我在Solr上做的每一个查询都会占用我10s MB的堆内存?   java如何使用方法解决:锁定帐户三次后?   java如何实现睡眠以显示图像的幻灯片   在Java中,按对象参数对映射<对象,列表<对象>>进行排序   java无法从密钥库读取密钥   java试图将水平recycleview嵌套到垂直recycleview中   认识C++对Web应用开发的重要性   使用共享对象实例化多个Runnable的java含义?   javabeans何时使用JavaBean?