python ipy模块_python各个模块讲解

python ipy模块_python各个模块讲解IPy模块介绍IPy这个强大的Python第三方包主要提供了包括网段、网络掩码、广播地址、子网数、IP类型的处理等等功能。安装IPy模块使用调用模块使用IPy模块时,需要先调用模块定义网段查询网段的IP数量使用len()函数IP地址转换使用reverseName()函数对IP进行反向解析查看IP类型使用iptype()函数查看IP类型将IP格式转换为其他类型格式判断IP的网段网段的不同输出格式strNormal()输出

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

IPy模块介绍
IPy这个强大的Python第三方包主要提供了包括网段、网络掩码、广播地址、子网数、IP类型的处理等等功能。

安装

wget https://pypi.python.org/packages/source/I/IPy/IPy-0.81.tar.gz --no-check-certificate  # 下载
tar -zxvf Ipy-0.81.tar.gz # 解压
cd IPy-0.81
python setup.py install  # 安装

Jetbrains全家桶1年46,售后保障稳定

IPy模块使用
调用模块
使用IPy模块时,需要先调用模块

from IPy import IP

定义网段

ip = IP('10.0.0.0/24')

查询网段的IP数量
使用len()函数

ip.len()
256
for i in ip.len():  # 遍历网段IP
    print(i)

IP地址转换
使用reverseName()函数对IP进行反向解析

ip1 = IP('192.168.4.111')
ip1.reverseName()
'111.4.168.192.in-addr.arp

查看IP类型
使用iptype()函数查看IP类型

ip1 = IP('192.168.4.111')
ip1.iptype()
PRIVATE

将IP格式转换为其他类型格式

ip1 = IP('192.168.4.111')
ip1.int()  # int()函数
3232236655  

ip1.strHex()  # 16进制
'0xc0a8046f'

ip1.strBin()  # 2进制
'11000000101010000000010001101111'

print(IP(0xc0a80101))  # 将16进制转化为IP格式
192.168.1.1

判断IP的网段

ip = IP('192.168.4.159')
书写形式一:
print(ip.make_net(26))
192.168.4.128/26  
书写形式二:
print(ip.make_net(255.255.225.192))
192.168.4.128/26  
print(IP('192.168.4.0-192.168.4.255',make_net=True))  #这个网段必须是子网掩码是255.255.225.0的网段
192.168.4.0/24

网段的不同输出格式
strNormal()输出IP的网段的不同格式

参数:

0:输出网段的网络标识

1:以prefix的形式输出网段

2:以decimalnetmask的格式输出网段

3:以lastIP的格式输出网段

print(IP('192.168.1.0/24').strNormal(0))  # 输出网段的网络标识
192.168.1.0

print(IP('192.168.2.0/26').strNormal(1))  # 输出网段
192.168.2.0/6  # 输出prefix格式网段
print(IP('192.168.3.0/24').strNormal(2))
192.168.2.0/255.255.255.192  # 输出decimalnetmask格式网段

print(IP('192.168.4.0/24').strNormal(3))
192.168.2.0-192.168.2.63  # 输出lastIP格式

判断两个网段是否存在包含或重叠等关系
判断网段大小
比较的依据:比较的是网络位,从左到右比较数值大小,能够区分开即比较停止,非网络位必须是0

IP("10.0.0.0/24") < IP("12.0.0.0/16")  # True 12.0.0.0/16网段大
IP("13.0.0.0/8") < IP("12.5.5.0/26")  # False 13.0.0.0/8网段大

判断IP地址和网段是否包含于另一个网段中
**in:**判断iIP或网段是否在另一个网段中国

"192.168.1.55" in IP("192.168.1.0/24")  # True
IP("192.168.4.64/26") in IP("192.168.4.0/24")  # True

判断两个网段是否有重叠

IP("192.168.4.0/26").overlaps("192.168.4.0/24")  # 1 1表示两个网段有重叠部分
IP("10.0.0.0/26").overlaps("10.0.2.0/24")  # 0 0表示两个网段没有重叠部分

输出网段的网络地址、子网掩码及广播地址

ip = IP("192.168.6.0/24")
ip.net()  # IP('192.168.6.0') 
ip.netmask()  # IP('255.255.255.0')
ip.broadcast()  # IP('192.168.6.255')

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/213546.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 超详细,手把手 教你 SQLyog 安装教程[通俗易懂]

    超详细,手把手 教你 SQLyog 安装教程[通俗易懂]1.点击SQLyog.exe,如下图2.点击ok,如下图3.点击下一步4.接收协议,点击下一步5.下一步6.更改安装路径,点击安装7.下一步,完成8.注册,需要密钥,名字随意密钥:dd987f34-f358-4894-bd0f-21f3f04be9c19.注册完成,如下图9.新建连接,并随意起个名字10.输入密码,连接数据库11.连接成功之后,就可以使用了…

    2022年5月28日
    1.3K
  • intellij idea快速生成main方法、for循环、out输出「建议收藏」

    intellij idea快速生成main方法、for循环、out输出「建议收藏」点击这里查看&lt;intellijidea使用教程汇总篇&gt;1、System.out.println()输入sout,按下enter键,生成System.out.println()方法.sout—&gt;soutv=System.out.println("变量名 = " + 变量)soutp—&gt;System.out.println("")2、public…

    2022年5月6日
    72
  • Java学习电子书大全「建议收藏」

    Java学习电子书大全「建议收藏」声明:以下内容仅供学习交流,转载自沉默王二gitee,如有侵权联系作者删除。简单说一下我为什么要花半个多月的时间来整理这份书单。主要是因为很多读者的知识体系是零散的,不成系统的,况且技术书籍这么庞杂。有了我这份清单之后,那些没有经验或者经验有限的初学者,在学习的时候思路瞬间就开阔了许多:少走弯路,利用有限的精力,更加高效地学习。想应聘初级Java工程师,那只需要阅读入门、工具、框架和数据库方面的书籍就行了;如果想应聘Java高级工程师,那么就需要阅读并发编程、底层、性能优化方面的书籍

    2022年7月7日
    73
  • 局域网,广域网和因特网的区别_因特网是不是广域网

    局域网,广域网和因特网的区别_因特网是不是广域网局域网、广域网、因特网,这三个概念我们经常会听到,但是是否真的理解他们之间有什么联系和区别呢?局域网(LAN,LocalAreaNetwork),如同其名字,即范围较小的计算机网络。广域网(WAN,WideAreaNetwork),相较于局域网范围较大。因特网(Internet),由全球所有的网络所组成的集合,也就是由无数个局域网,通过WAN线路汇聚到运营商,然后运营商之间互联起来,所形成的互联网。其中局域网和广域网是两个十分相近的概念,举个例子来简单理解一下吧。如果你摆弄过路由.

    2022年10月18日
    4
  • 如何防止135端口入侵「建议收藏」

    如何防止135端口入侵「建议收藏」
    新学期到了,许多学生都要配机,新电脑的安全防卫做好了吗?能不能拒绝成为黑客的肉鸡?令人遗憾的是,很多新手都不知道或者忽视了对敏感端口的屏蔽。例如135端口,一旦黑客利用135端口进入你的电脑,就能成功地控制你的机子。我们应该如何防范通过135端口入侵呢?下面我们就为大家来揭开谜底。

      小知识:每台互联网中的计算机系统,都会同时打开多个网络端口,端口就像出入房间的门一样。因为房间的门用于方便人们的进出,而端口则为不同的网路服务提供数据交换。正如房间的门可以放进小tou一样

    2025年7月8日
    4
  • 微信小程序实现banner图轮播(动态获取数据),自动获取图片高度

    微信小程序实现banner图轮播(动态获取数据),自动获取图片高度效果图:indicator-active-color=”#007aff”//当前选中的指示点颜色js:constapp=getApp()Page({data:{//———–模拟banner图———–imgUrls:[‘/image/1545118381903.jpg’,’/imag…

    2022年5月22日
    49

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号