Python实现根据IP地址和子网掩码算出网段的方法

yipeiwu_com6年前Python基础

本文实例讲述了Python实现根据IP地址和子网掩码算出网段的方法。分享给大家供大家参考。具体如下:

该代码在Linux环境2.6.6python版本测试通过!

#!/usr/bin/env python
#_*_encoding:utf-8_*_
#Input your ip address and netmask to figure out your network .
#申明:此脚本为交互式,默认情况下请执行python network.py
from IPy import IP
input_IP = raw_input('请输入ip地址:')
list1 = input_IP.split('.')
if len(list1) != 4:
  print "您输入的ip地址不合法,请重新输入!"
  exit()
for i in list1:
  if i.isdigit() == True and int(i) >=0 and int(i) <= 255:
    pass
  else:
    print "您输入的ip地址不合法,请重新输入!"
    exit()
input_Netmask = raw_input('请输入子网掩码:')
list2 = input_Netmask.split('.')
if len(list2) != 4:
  print "您输入的子网掩码不合法,请重新输入!"
  exit()
for i in list2:
  if i.isdigit() == True and int(i) >=0 and int(i) <= 255:
    pass
  else:
    print "您输入的子网掩码不合法,请重新输入!"
    exit()
print "您所在的网段为:%s" % (IP(input_IP).make_net(input_Netmask))

希望本文所述对大家的Python程序设计有所帮助。

相关文章

Python输出各行命令详解

Python输出各行命令详解

创建main.py文件并粘贴下面代码 点击右键运行Debug 'main'后,下方的Debug窗口会出现ImportError: No module named 'bottle'这样的提...

手写一个python迭代器过程详解

分析 我们都知道一个可迭代对象可以通过iter()可以返回一个迭代器。 如果想要一个对象称为可迭代对象,即可以使用for,那么必须实现__iter __()方法。 在一个类...

实例讲解Python3中abs()函数

Python3 abs() 函数 描述 abs() 函数返回数字的绝对值。 语法 以下是 abs() 方法的语法: abs( x ) 参数 x-- 数值表达式,可以是整数,浮点...

10个易被忽视但应掌握的Python基本用法

我一辈子都在写代码,但从来没有掌握编码的精髓。大部分情况下使用Visual Basic,因为我用VB最舒服。同时还略微了解一点其他语言(R、C、JavaScript、Applescrip...

Python实现快速多线程ping的方法

本文实例讲述了Python实现快速多线程ping的方法。分享给大家供大家参考。具体如下: #!/usr/bin/python #_*_coding:utf-8_*_ # ''' 名称...