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


Posted in Python onJune 04, 2018

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

#!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 相关文章推荐
python教程之用py2exe将PY文件转成EXE文件
Jun 12 Python
Python实现的批量下载RFC文档
Mar 10 Python
Python中用于去除空格的三个函数的使用小结
Apr 07 Python
Python实现单词拼写检查
Apr 25 Python
Python中json格式数据的编码与解码方法详解
Jul 01 Python
python之Socket网络编程详解
Sep 29 Python
深入浅析Python2.x和3.x版本的主要区别
Nov 30 Python
PyTorch搭建多项式回归模型(三)
May 22 Python
python爬虫请求头设置代码
Jul 28 Python
python speech模块的使用方法
Sep 09 Python
python安装cx_Oracle和wxPython的方法
Sep 14 Python
python可视化大屏库big_screen示例详解
Nov 23 Python
pytorch + visdom CNN处理自建图片数据集的方法
Jun 04 #Python
python验证码识别教程之滑动验证码
Jun 04 #Python
python验证码识别教程之利用投影法、连通域法分割图片
Jun 04 #Python
python验证码识别教程之灰度处理、二值化、降噪与tesserocr识别
Jun 04 #Python
实用自动化运维Python脚本分享
Jun 04 #Python
python中验证码连通域分割的方法详解
Jun 04 #Python
python 匹配url中是否存在IP地址的方法
Jun 04 #Python
You might like
PHP执行速率优化技巧小结
2008/03/15 PHP
php与python实现的线程池多线程爬虫功能示例
2016/10/12 PHP
PHP在线打包下载功能示例
2016/10/15 PHP
PHP的JSON封装、转变及输出操作示例
2019/09/27 PHP
js 剪切板的用法(clipboardData.setData)与js match函数介绍
2013/11/19 Javascript
jquery实现在页面加载的时自动为日期插件添加当前日期
2014/08/20 Javascript
javascript实用方法总结
2015/02/06 Javascript
Javascript中的迭代、归并方法详解
2016/06/14 Javascript
JavaScript中对象的不同创建方法
2016/08/12 Javascript
微信小程序 缓存(本地缓存、异步缓存、同步缓存)详解
2017/01/17 Javascript
JavaScript错误处理和堆栈追踪详解
2017/04/18 Javascript
jQuery遍历节点方法汇总(推荐)
2017/05/13 jQuery
在Vuex使用dispatch和commit来调用mutations的区别详解
2018/09/18 Javascript
浅析Vue.js 中的条件渲染指令
2018/11/19 Javascript
详解Vue3中对VDOM的改进
2020/04/23 Javascript
jQuery实现鼠标滑动切换图片
2020/05/27 jQuery
vue使用canvas实现移动端手写签名
2020/09/22 Javascript
python logging重复记录日志问题的解决方法
2018/07/12 Python
django框架之cookie/session的使用示例(小结)
2018/10/15 Python
关于pycharm中pip版本10.0无法使用的解决办法
2019/10/10 Python
python 对象真假值的实例(哪些视为False)
2020/12/11 Python
德国运动鞋网上商店:Afew Store
2018/01/05 全球购物
澳大利亚天然护肤品、化妆品和健康产品一站式商店:Nourished Life
2018/12/02 全球购物
SneakerStudio英国:最佳运动鞋商店
2019/05/22 全球购物
澳大利亚在线批发商:Simply Wholesale
2021/02/24 全球购物
关于Assembly命名空间的三个面试题
2015/07/23 面试题
编程输出如下图形
2013/11/24 面试题
聊城大学毕业生自荐书
2014/02/01 职场文书
捐赠仪式主持词
2014/03/19 职场文书
高中生班主任评语
2014/04/25 职场文书
企业宣传工作方案
2014/06/02 职场文书
师范类求职信
2014/06/21 职场文书
2014最新预备党员思想汇报范文:中国梦,我的梦
2014/10/25 职场文书
校长一岗双责责任书
2015/05/09 职场文书
简述Java中throw-throws异常抛出
2021/08/07 Java/Android
python 判断字符串当中是否包含字符(str.contain)
2022/06/01 Python