精华内容
下载资源
问答
  • 互联网上的每台计算机都有独一无二的编号,称为IP地址,每个合法的IP地址由“.”分开的4个数字组成,并且IP地址细分类型的话,...现在用户输入一个字符串(不含有空格)判断是否合法。import os,sysa=input()def ch...

    互联网上的每台计算机都有独一无二的编号,称为IP地址,每个合法的IP地址由“.”分开的4个数字组成,并且IP地址细分类型的话,可以分为“A” “B” “C” "D" "E"类,我们常常使用的是C类IP地址所以第一个数字组成开头不能含有“0”,因为那是A类IP地址专属的,好奇的朋友可以去查查哦。

    现在用户输入一个字符串(不含有空格)判断是否合法。

    import os,sys

    a=input()

    def check_ip(ip):

    import sys

    sc=ip.strip().split('.')

    if len(sc)!= 4:

    print( "check ip address failed!")

    sys.exit()

    for i in range(4):

    b=len(sc[i])

    c=sc[i]

    for j in range(b):

    if c[j]==" ":

    print ("check ip address failed!")

    sys.exit()

    j+=1

    try:

    sc[i]=int(sc[i])

    except:

    print ("check ip address failed!")

    sys.exit()

    if sc[i]<=255 & sc[i]>=0:

    pass

    else:

    print ("check ip address failed!")

    sys.exit()

    i+=1

    else:

    print ("check ip address success!")

    if len(sys.argv)!=2:

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

    sys.exit()

    else:

    check_ip(sys.argv[1])

    print(check_ip(a))

    以上代码我个人觉得是比较简单易懂的方法,当然用的时候要注意复制过后的每行空格格式。因为PYTHON的空格是抓的非常的严格的。

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    展开全文
  • 题目: 给出一个字符串, 判断是否是是合法IP(IPv4)地址 思路 将字符串按"."分割成4段得到一个列表 逐个判断列表中的字符串是否数字格式并且在0~255之间, 是在新列表对应位置保存True, 不是保存False 判断新列表...

    题目: 给出一个字符串, 判断其是否是是合法的IP(IPv4)地址
    思路

    1. 将字符串按"."分割成4段得到一个列表
    2. 逐个判断列表中的字符串是否数字格式并且在0~255之间, 是在新列表对应位置保存True, 不是保存False
    3. 判断新列表中是否有False

    实现代码

    #!/usr/bin/python3
    
    
    def  is_ipv4(ip: str) -> bool:
        """
        检查ip是否合法
        :param: ip ip地址
        :return: True 合法 False 不合法
        """
       return True  if [1] * 4 == [x.isdigit() and 0 <= int(x) <= 255 for x in ip.split(".")] else False
    
    print(is_ipv4("192.168.1.2a0"))

    注: 因为True==1, [1, 1, 1, 1] 相当于[True, True, True, True]

    转载于:https://www.cnblogs.com/superhin/p/11454805.html

    展开全文
  • 因为我是网络工程师,从开始学python3起就对判断ipv4地址是否合法有需求,目前这个是觉得最简洁好用的了。def is_ipv4(ip: str) -> bool:'检查ip是否合法'return ([True] * 4 == [(True) if (x.isdigit() and 0 &...

    因为我是网络工程师,从开始学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,将其返回

    展开全文
  • 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库的安装请自行查找。

    展开全文
  • IPIP合法性校验是开发中非常常用的,看起来很简单的判断,作用确很大,写起来比较容易出错,今天我们来总结一下,看一下3种常用的IP地址合法性校验的方法。IPv4的ip地址格式:(1~255).(0~255).(0~255).(0~255)正则...
  • 每台计算机都有独一无二的编号,称为ip地址,每个合法ip地址由‘.’分隔开的4个数字组成,每个数字的取值范围为0--255输入一个字符串,判断是否合法IP地址,若是输出‘YES’,否则输出‘NO’第一种方法:p =...
  • 果然,老久不敲就容易忘,室友的面试题 def hefa(ipdz): jsds=0 jlwz=[] js=0 for i in ipdz: if i==".": jsds+=1 jlwz=jlwz+[js] js+=1 if jsds != 3: return "非法ip" else: ... ip_num=[]
  • IPIP合法性校验是开发中非常常用的,看起来很简单的判断,作用的确很大,写起来比较容易出错,今天我们来总结一下,看一下3种常用的IP地址合法性校验的方法。IPv4的ip地址格式:(1~255).(0~255).(0~255).(0~255)正则...
  • python 判断一个IP地址是否合法

    千次阅读 2016-07-24 15:42:04
    最近在看tornado的源码,遇到了 is_valid_ip(ip) 这个函数,该函数用来判断一个IP地址是否合法,支持IPv4和IPv6,想到自己前阵子也遇到过这个问题,看着源码的解决方法要比自己的好多了,就摘抄下来,以留备用 ...
  • Python判断IP地址格式是否合法

    千次阅读 2017-08-29 22:04:48
    def isIpV4AddrLegal(ipStr): # 切割IP地址为一个列表 ip_split_list = ipStr.strip().split('.') # 切割后列表必须有4个元素 if 4 != len(ip_split_list): return False for i in range(4): try:
  • 使用方法: 代码如下:[root@yang python]# bash check_ip.sh IP地址执行结果:返回值0校验合法,非0不合法。shell代码: 代码如下:[root@yang python]# vi check_ip.sh #!/usr/bin/shCheckIPAddr(){echo $1|grep “^...
  • 使用shell校验IP地址合法性使用方法:代码如下:[root@yang python]# bash check_ip.sh IP地址执行结果:返回值0校验合法,非0不合法。shell代码:代码如下:[root@yang python]# vi check_ip.sh#!/usr/bin/...
  • 互联网上的每台计算机都有...现在用户输入一个字符串(不含有空格)判断是否合法。 import os,sys a=input() def check_ip(ip): import sys sc=ip.strip().split('.') if len(sc)!= 4: print( "check ip addr
  • Python操作------IP地址是否合法判断 方法一(转载): ip = '' ip_split = ip.split('.') # 以 . 为分隔符分割字符串 for i in range(4): # 循环验证分割的每个字符串 try: int(ip_split[i]) # 验证是否是整数 ...
  • IP合法性校验是开发中非常常用的,看起来很简单的判断,作用确很大,写起来比较容易出错,今天我们来总结一下,看一下3种常用的IP地址合法性校验的方法。IPv4的ip地址格式:(1~255).(0~255).(0~255).(0~255)方法1: ...
  • 这篇文章主要介绍了关于python实现判断一个字符串是否合法IP地址,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下一个刚结束的笔试题目,简单贴一下吧,下面是具体实现:#!usr/bin/env python#...
  • python练习——判断IP地址合法性 题目描述 互联网上的每台计算机都有一个独一无二的编号,称为IP地址,每个合法的IP地址由’.'分隔开的4个数字组成,每个数字的取值范围是0-255。 现在用户输入一个字符串 s (不含...
  • {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],"search_count":[{"count_phone":4,"count":4}]},"card":[{"des":"阿里技术人对外发布原创技术内容的最大平台;社区覆盖了云计算、大数据、人工智能、...
  • 检查IP地址是否为空 if ipaddr ==None: print('非法IP!IP不允许为空,请检查') return #2.检查IP地址是否长度合理 if len(ipaddr) < 7 or len(ipaddr) >15: print('非法IP!IP地址长度不合法,请检查')...
  • 互联网上的每台计算机都有独一无二的编号,称为IP地址,...现在用户输入一个字符串(不含有空格)判断是否合法。 import os,sys a=input() def check_ip(ip): import sys sc=ip.strip().split('.') if len(sc)!= 4:
  • #!usr/bin/env python #encoding:utf-8 ...功能:判断一个字符串是否合法IP地址 ''' import re def judge_legal_ip(one_str): ''''' 正则匹配方法 判断一个字符串是否合法IP地址 '
  • Python练习之IP地址合法判断 互联网上的每台计算机都有-一个IP,合法的IP格式为: A.B.C.D。 其中 A、B、C、D均为[0, 255]中的整数。为了简单起见,我们规定这四个整数中不允许有前导零存在,如001。 现在给你-一个...
  • 一个刚结束的笔试题目,简单贴一下吧,下面是具体实现: #!usr/bin/env python #encoding:utf-8 ...__Author__:沂水寒城 功能:判断一个字符串是否合法IP地址 ... 判断一个字符串是否合法IP地址
  • 1、使用正则表达式首先分析IP地址的组成,十进制的合法IP地址由32位数字组成使用.分割开每个分组可出现的情况:第一个分组:1-9:一位数字10-99:两位数字100-199:三位数字且以1开头200-249250-255其余分组:0-910-...
  • 这篇文章主要介绍了关于python实现判断一个字符串是否合法IP地址,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下一个刚结束的笔试题目,简单贴一下吧,下面是具体实现:#!usr/bin/env python#...

空空如也

空空如也

1 2 3 4
收藏数 79
精华内容 31
关键字:

判断ip地址是否合法python

python 订阅