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判断字符串与大小写转换
Jun 08 Python
用ReactJS和Python的Flask框架编写留言板的代码示例
Dec 19 Python
深入解析Python中的list列表及其切片和迭代操作
Mar 13 Python
python Django框架实现自定义表单提交
Mar 25 Python
Python下使用Scrapy爬取网页内容的实例
May 21 Python
Python决策树之基于信息增益的特征选择示例
Jun 25 Python
python 分离文件名和路径以及分离文件名和后缀的方法
Oct 21 Python
Python自动化导出zabbix数据并发邮件脚本
Aug 16 Python
python RC4加密操作示例【测试可用】
Sep 26 Python
tensorflow实现在函数中用tf.Print输出中间值
Jan 21 Python
python实现文件分片上传的接口自动化
Nov 19 Python
Python利用FlashText算法实现替换字符串
Mar 31 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
历史证明,懒惰才是推动科学发展技术进步的动力
2021/03/02 无线电
PHPLog php 程序调试追踪工具
2009/09/09 PHP
浅析linux下apache服务器的配置和管理
2013/08/10 PHP
php使用ICQ网关发送手机短信
2013/10/30 PHP
PHP类中的魔术方法(Magic Method)简明总结
2014/07/08 PHP
php生成二维码
2015/08/10 PHP
JAVASCRIPT HashTable
2007/01/22 Javascript
jquery插件 cluetip 关键词注释
2010/01/12 Javascript
深入理解JavaScript定时机制
2010/10/29 Javascript
javascript改变position值实现菜单滚动至顶部后固定
2013/01/18 Javascript
jQuery之按钮组件的深入解析
2013/06/19 Javascript
javascript中的throttle和debounce浅析
2014/06/06 Javascript
jquery实现的下拉和收缩效果示例
2014/08/21 Javascript
JS简单操作select和dropdownlist实例
2014/11/26 Javascript
node.js中的fs.renameSync方法使用说明
2014/12/16 Javascript
设置jQueryUI DatePicker默认语言为中文
2016/06/04 Javascript
在Vue中使用highCharts绘制3d饼图的方法
2018/02/08 Javascript
jQuery实现点击自身以外区域关闭弹出层功能完整示例【改进版】
2018/07/31 jQuery
axios对请求各种异常情况处理的封装方法
2018/09/25 Javascript
[00:30]塑造者的传承礼包-戴泽“暗影之焰”套装展示视频
2014/04/04 DOTA
[14:25]教你分分钟做大人:主宰(HEROS)
2014/12/08 DOTA
Python urlopen 使用小示例
2008/09/06 Python
python3 判断列表是一个空列表的方法
2018/05/04 Python
python实现kmp算法的实例代码
2019/04/03 Python
Python Tornado批量上传图片并显示功能
2020/03/26 Python
python使用信号量动态更新配置文件的操作
2020/04/01 Python
完美解决ARIMA模型中plot_acf画不出图的问题
2020/06/04 Python
解决TensorFlow训练模型及保存数量限制的问题
2021/03/03 Python
详解CSS3中常用的样式【基本文本和字体样式】
2020/10/20 HTML / CSS
英国高档时尚男装购物网站:MR PORTER
2016/08/09 全球购物
澳大利亚网上玩具商店:Mr Toys Toyworld
2018/03/25 全球购物
Unix控制后台进程都有哪些进程
2016/09/22 面试题
珍惜资源保护环境的建议书
2014/05/14 职场文书
师德师风承诺书
2014/05/23 职场文书
Python实现简单的俄罗斯方块游戏
2021/09/25 Python
JavaScript利用html5新方法操作元素类名详解
2021/11/27 Javascript