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

yipeiwu_com7年前Python基础

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

#!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实现判断一个字符串是否是合法IP地址的示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Pytorch自己加载单通道图片用作数据集训练的实例

Pytorch自己加载单通道图片用作数据集训练的实例

pytorch 在torchvision包里面有很多的的打包好的数据集,例如minist,Imagenet-12,CIFAR10 和CIFAR100。在torchvision的datas...

基于Python中isfile函数和isdir函数使用详解

Python编程语言判断是否是目录 在Python编程语言中可以使用os.path.isdir()函数判断某一路径是否为目录。其函数原型如下所示。 os.path.isdir(pat...

python的time模块和datetime模块实例解析

这篇文章主要介绍了python的time模块和datetime模块实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1. 将当前...

Python的matplotlib绘图如何修改背景颜色的实现

Python的matplotlib绘图如何修改背景颜色的实现

在主图中背景颜色不知道怎么改,plt.plot()中没有axisbg参数。 但是子图可以对plt.subplot的参数做修改,下面是对子图的背景颜色修改代码 import matpl...

Python正则表达式和元字符详解

正则表达式 正则表达式是一种强大的字符串操作工具。它是一种领域特定语言 (DSL),不管是 Python 还是在大多数现代编程语言中都是作为库存在。 它们主要面向两种任务: - 验...