精华内容
下载资源
问答
  • python判断ip地址合法性
    2021-01-29 13:07:11

    因为我是网络工程师,从开始学python3起就对判断ipv4地址是否合法有需求,目前这个是觉得最简洁好用的了。

    def is_ipv4(ip: str) -> bool:

    '检查ip是否合法'

    return ([True] * 4 == [(True) if (x.isdigit() and 0 <= int(x) <= 255) else (False) for x in ip.split('.')])

    几个地方给新人解释一下:

    1、(ip: str) -> bool

    提示而不是强制!!

    提示你输入ip这个参数的类型应该是str,返回值应该是bool

    def在接受参数的时候不会去强制检查参数类型

    2、列表推导式

    [(True) if (x.isdigit() and 0 <= int(x) <= 255) else (False) for x in ip.split('.')]),

    for x in ip.split('.') 将其按小数点分割,稍后再判断每一位的值是否合法,合法就append1个True到返回列表,不合法就append1个False到返回列表

    每一位的判断过程:

    返回 True,如果x是数字,且在0到255的范围,

    返回False,如果x不是数字(因为是and连接,前面x是false,后面就不执行判断数字范围了,假如x是非数字,这里的int(x)也不会报错,因为没有执行它)

    返回False,如果x是数字,但int(x)得到的数字不在0到255的范围里面

    如果每一位都合法,且列表长度为4,则列表推导式返回的列表是[True, True, True, True]

    3、[True] * 4

    [True] * 4 就是 [True, True, True, True]

    4、return(XX == YY)

    == 检查XX和YY,如果相同,结果是1个True,如果不同,结果是1个False,将其返回

    更多相关内容
  • /usr/bin/python import os,sys def check_ip(ipaddr): import sys addr=ipaddr.strip().split(‘.’) #切割IP地址为一个列表 #print addr if len(addr) != 4: #切割后列表必须有4个参数 print “check ip address
  • 互联网上的每台计算机都有独一无二的编号,称为IP地址,每个合法IP地址由“.”分开的4个数字组成,并且IP地址细分类型的话,可以分为“A” “B” “C” “D” “E”类,我们常常使用的是C类IP地址所以第一个数字...
  • Python判断IP地址合法性的方法发布于 2014-10-10 15:16:49 | 753 次阅读 | 评论: 0 | 来源: 网友投递Python编程语言Python 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个...

    Python判断IP地址合法性的方法

    发布于 2014-10-10 15:16:49 | 753 次阅读 | 评论: 0 | 来源: 网友投递

    Python编程语言Python 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。

    本文是一个Python实现的可以判断IP地址合法性的方法实例,需要的朋友可以参考下

    一、使用方法和执行效果请看图:

    b82858c950894deed9b4e1effd2b7ac2.png

    二、python实现代码:

    [root@yang python]# vi check_ip.py

    #!/usr/bin/python

    import os,sys

    def check_ip(ipaddr):

    import sys

    addr=ipaddr.strip().split('.')  #切割IP地址为一个列表

    #print addr

    if len(addr) != 4:  #切割后列表必须有4个参数

    print "check ip address failed!"

    sys.exit()

    for i in range(4):

    try:

    addr[i]=int(addr[i])  #每个参数必须为数字,否则校验失败

    except:

    print "check ip address failed!"

    sys.exit()

    if addr[i]<=255 and addr[i]>=0:    #每个参数值必须在0-255之间

    pass

    else:

    print "check ip address failed!"

    sys.exit()

    i+=1

    else:

    print "check ip address success!"

    if  len(sys.argv)!=2:  #传参加本身长度必须为2

    print "Example: %s 10.0.0.1 "%sys.argv[0]

    sys.exit()

    else:

    check_ip(sys.argv[1])  #满足条件调用校验IP函数

    相关阅读:

    Python判断IP地址合法性的方法

    python实现查询IP地址所在地的方法

    python判断windows隐藏文件的方法

    python和shell实现的校验IP地址合法性示例代码

    python将ip地址转换成整数的方法

    python中readline判断文件读取结束的方法

    Linux下Python获取IP地址的代码

    Python统计日志中每个IP出现次数的方法

    python统计日志ip访问数的方法

    Python基于scapy实现修改IP发送请求的方法示例

    python操作日期和时间的方法大全

    Python去掉字符串中空格的方法

    展开全文
  • Python练习之IP地址合法性判断 互联网上的每台计算机都有-一个IP,合法的IP格式为: A.B.C.D。 其中 A、B、C、D均为[0, 255]中的整数。为了简单起见,我们规定这四个整数中不允许有前导零存在,如001。 现在给你-一个...
  • IP合法性校验是开发中非常常用的,看起来很简单的判断,作用确很大,写起来比较容易出错,今天我们来总结一下,看一下3种常用的IP地址合法性校验的方法。IPv4的ip地址格式:(1~255).(0~255).(0~255).(0~255)方法1: ...

    IP合法性校验是开发中非常常用的,看起来很简单的判断,作用确很大,写起来比较容易出错,今天我们来总结一下,看一下3种常用的IP地址合法性校验的方法。

    IPv4的ip地址格式:(1~255).(0~255).(0~255).(0~255)

    方法1: 正则表达式判定法

    最简单的实现方法是构造一个正则表达式。判断用户的输入与正则表达式是否匹配。若匹配则是正确的IP地址,否则不是正确的IP地址。

    复制代码 代码如下:

    ^(1d{2}|2[0-4]d|25[0-5]|[1-9]d|[1-9]).(1d{2}|2[0-4]d|25[0-5]|[1-9]d|d).(1d{2}|2[0-4]d|25[0-5]|[1-9]d|d).(1d{2}|2[0-4]d|25[0-5]|[1-9]d|d)$

    下面给出相对应的验证ip的正则表达式:

    d表示0~9的任何一个数字

    {2}表示正好出现两次[0-4]表示0~4的任何一个数字

    | 的意思是或者

    1d{2}的意思就是100~199之间的任意一个数字

    2[0-4]d的意思是200~249之间的任意一个数字

    25[0-5]的意思是250~255之间的任意一个数字[1-9]d的意思是10~99之间的任意一个数字[1-9])的意思是1~9之间的任意一个数字

    .的意思是.点要转义(特殊字符类似,@都要加转义)

    代码如下:

    import re

    def check_ip(ipAddr):

    compile_ip=re.compile('^(1d{2}|2[0-4]d|25[0-5]|[1-9]d|[1-9]).(1d{2}|2[0-4]d|25[0-5]|[1-9]d|d).(1d{2}|2[0-4]d|25[0-5]|[1-9]d|d).(1d{2}|2[0-4]d|25[0-5]|[1-9]d|d)$')

    if compile_ip.match(ipAddr):

    return True

    else:

    return False

    方法2: 字符串拆解法

    把ip地址当作字符串,以.为分隔符分割,进行判断

    代码:

    #!/usr/bin/python

    import os,sys

    def check_ip(ipAddr):

    import sys

    addr=ipAddr.strip().split('.') #切割IP地址为一个列表

    #print addr

    if len(addr) != 4: #切割后列表必须有4个参数

    print "check ip address failed!"

    sys.exit()

    for i in range(4):

    try:

    addr[i]=int(addr[i]) #每个参数必须为数字,否则校验失败

    except:

    print "check ip address failed!"

    sys.exit()

    if addr[i]<=255 and addr[i]>=0: #每个参数值必须在0-255之间

    pass

    else:

    print "check ip address failed!"

    sys.exit()

    i+=1

    else:

    print "check ip address success!"

    if len(sys.argv)!=2: #传参加本身长度必须为2

    print "Example: %s 10.0.0.1 "%sys.argv[0] sys.exit()

    else:

    check_ip(sys.argv[1]) #满足条件调用校验IP函数

    方法3: 引入IPy类库

    IPy库是一个处理IP比较强大的第三方库

    IPy库的安装请自行查找。

    展开全文
  • 互联网上的每台计算机都有独一无二的编号,称为IP地址,每个合法IP地址由“.”分开的4个数字组成,并且IP地址细分类型的话,可以分为“A” “B” “C” “D” “E”类,我们常常使用的是C类IP地址所以第一个数字...
  • python练习——判断IP地址合法性

    千次阅读 2021-03-05 18:29:25
    python练习——判断IP地址合法性 题目描述 互联网上的每台计算机都有一个独一无二的编号,称为IP地址,每个合法的IP地址由’.'分隔开的4个数字组成,每个数字的取值范围是0-255。 现在用户输入一个字符串 s (不含...

    python练习——判断IP地址合法性

    题目描述

    互联网上的每台计算机都有一个独一无二的编号,称为IP地址,每个合法的IP地址由’.'分隔开的4个数字组成,每个数字的取值范围是0-255。

    现在用户输入一个字符串 s (不含空白符,不含前导0,如001直接输入1),请你判断 s 是否为合法IP,若是,输出’Yes’,否则输出’No’。

    如用户输入为202.114.88.10, 则输出Yes; 当用户输入202.114.88,则输出No。

    输入输出格式

    输入:一个字符串
    输出:‘No’或’Yes’

    代码注释

    s = input()
    def f(s):
    	# 以“.”为标志对字符串进行切片,得到一个字符串列表
        lists = s.split('.')
        # 是否是4个数字
        if len(lists) != 4:
            return 'No'
        # 是否都在0-255之间
        for i in range(4):
            try:
                tmp = int(lists[i])
                if tmp not in range(0,256):
                    return 'No'
            except:
                return 'No'
        return 'Yes'
    print(f(s))
    

    学习笔记

    try/except异常处理
    来自菜鸟教程

    • 执行 try 子句(执行代码)如果没有异常发生,忽略 except 子句,try 子句执行后结束。
    • 如果发生了异常,那么 try 子句后面的部分被忽略。如果异常的类型和 except 之后的名称相符,那么对应的 except 子句将被执行。
    • 如果一个异常没有与任何的 except 匹配,那么这个异常将会正常传递给上层的 try 中,出现正常报错。
    • 一个 try 语句可能包含多个except子句,分别来处理不同的特定的异常。最多只有一个分支会被执行。
    • 处理程序将只针对对应的 try 子句中的异常进行处理,而不是其他的 try 的处理程序中的异常。
    • 一个except子句可以同时处理多个异常,这些异常将被放在一个括号里成为一个元组。
    • 最后一个except子句可以忽略异常的名称,它将被当作通配符使用,可以使用这种方法打印一个错误信息,然后再次把异常抛出。
    展开全文
  • IP地址:((?: (?:25[0-5]|2[0-4]\d|[01]?\d?\d)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d?\d)) 或 ^(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|[1-9]).(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d).(1\d{2}|2[0-4]\d|25[0-5]|[1-9]\d|\d...
  • Python | 判定IP地址合法性的四种方法

    千次阅读 2020-12-10 15:10:42
    IP 合法性校验是开发中非常常用的,看起来很简单的判断,作用确很大,写起来比较容易出错,今天我们来总结一下,看一下3种常用的IP地址合法性校验的方法。 先了解 IPV4 的 IP 格式,它的形式应该为:(1255).(0255)....
  • Python判断ip是否合法

    千次阅读 2020-06-10 18:35:05
    2.在判断每一位数字是否在2-255之间,因为ip有范围限制 3.这里通过check_num来判断是否每一位数字都符合固定 4.通过str(int(num)) == num过滤掉了类似10.04.05.06这样前面带0的情况 def is_ip(ip): num_list = ip....
  • 原标题:Python判定IP地址合法性的三种方法IP合法性校验是开发中非常常用的,看起来很简单的判断,作用确很大,写起来比较容易出错,今天我们来总结一下,看一下3种常用的IP地址合法性校验的方法。IPv4的ip地址格式...
  • 一、python校验IP地址合法性 执行效果: python代码: 复制代码 代码如下: [root@yang python]# vi check_ip.py #!/usr/bin/python import os,sys def check_ip(ipaddr):  import sys  addr=ipaddr.strip().split...
  • python判断ip4合法性

    千次阅读 热门讨论 2021-02-05 15:17:28
  • 全都是泡沫,只一刹的花火,所谓的友情,全部都太脆弱python怎么判断IP地址合法性IP地址是指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写。IP地址是IP...
  • 判断IP地址合法性

    2020-12-21 02:36:45
    每台计算机都有独一无二的编号,称为ip地址,每个合法ip地址由‘.’分隔开的4个数字组成,每个数字的取值范围为0--255输入一个字符串,判断其是否为合法IP地址,若是输出‘YES’,否则输出‘NO’第一种方法:p =...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,117
精华内容 2,846
关键字:

python判断ip地址合法性