• 技术文章 >后端开发 >Python教程

    python实现判断一个字符串是否是合法IP地址

    不言不言2018-06-04 16:13:58原创3554
    这篇文章主要介绍了关于python实现判断一个字符串是否是合法IP地址,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

    一个刚结束的笔试题目,简单贴一下吧,下面是具体实现:

    #!usr/bin/env python
    #encoding:utf-8
    '''
    __Author__:沂水寒城
    功能:判断一个字符串是否是合法IP地址
    '''
    import re
    def judge_legal_ip(one_str):
      '''
      正则匹配方法
      判断一个字符串是否是合法IP地址
      '''
      compile_ip=re.compile('^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$') 
      if compile_ip.match(one_str): 
        return True 
      else: 
        return False 
    def judge_legal_ip2(one_str):
      '''
      简单的字符串判断
      '''
      if '.' not in one_str:
        return False
      elif one_str.count('.')!=3:
        return False
      else:
        flag=True
        one_list=one_str.split('.')
        for one in one_list:
          try:
            one_num=int(one)
            if one_num>=0 and one_num<=255:
              pass
            else:
              flag=False
          except:
            flag=False
        return flag
              
    if __name__=='__main__':
      ip_list=['','172.31.137.251','100.10.0.1000','1.1.1.1','12.23.13','aa.12.1.2','12345678','289043jdhjkbh']
      for one_str in ip_list:
        if judge_legal_ip(one_str): #正则方法
        #if judge_legal_ip2(one_str): #字符串方法
          print '{0} is a legal ip address!'.format(one_str)
        else:
          print '{0} is not a legal ip address!'.format(one_str)

    结果如下:

    is not a legal ip address! 
    172.31.137.251 is a legal ip address! 
    100.10.0.1000 is not a legal ip address! 
    1.1.1.1 is a legal ip address! 
    12.23.13 is not a legal ip address! 
    aa.12.1.2 is not a legal ip address! 
    12345678 is not a legal ip address! 
    289043jdhjkbh is not a legal ip address!

    相关推荐:

    python实现判断数组是否包含指定元素的方法

    以上就是python实现判断一个字符串是否是合法IP地址的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:python 字符串 一个
    上一篇:Numpy array数据的增、删、改、查 下一篇:pytorch + visdom CNN处理自建图片数据集的方法
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• Python中闭包与lambda的作用域解析• 完全掌握Python中的双下方法• Python解析参数的三种方法详解• 总结分享Python冷门的技巧• python虚拟环境配置与管理
    1/1

    PHP中文网