Python检测端口IP字符串是否合法


Posted in Python onJune 05, 2020

IP合法性校验是开发中非常常用的,看起来很简单的判断,作用确很大,写起来比较容易出错,今天我们来总结一下,看一下3种常用的IP地址合法性校验的方法。

不使用正则表达式的方式:

def is_ip(ip: str) -> bool:
  return True if [True] * 4 == [x.isdigit() and 0 <= int(x) <= 255 for x in ip.split(".")] else False

使用正则表达式的方式

import re
 
def isIP(str):
  p = re.compile('^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$')
  if p.match(str):
    return True
  else:
    return False

另一种

def checkip(hostip):
  pat = re.compile(r'([0-9]{1,3})\.')
  r = re.findall(pat,hostip+".")
  if len(r)==4 and len([x for x in r if int(x)>=0 and int(x)<=255])==4:
    return True
  else:
    return False

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

Python 相关文章推荐
在VS Code上搭建Python开发环境的方法
Apr 06 Python
图文详解python安装Scrapy框架步骤
May 20 Python
用python生成(动态彩色)二维码的方法(使用myqr库实现)
Jun 24 Python
python如何实现数据的线性拟合
Jul 19 Python
Django 后台获取文件列表 InMemoryUploadedFile的例子
Aug 07 Python
基于python实现从尾到头打印链表
Nov 02 Python
Python图片处理模块PIL操作方法(pillow)
Apr 07 Python
python 使用事件对象asyncio.Event来同步协程的操作
May 04 Python
Pygame的程序开始示例代码
May 07 Python
Python faker生成器生成虚拟数据代码实例
Jul 20 Python
PyCharm中关于安装第三方包的三个建议
Sep 17 Python
pytorch中的 .view()函数的用法介绍
Mar 17 Python
Python如何基于Tesseract实现识别文字功能
Jun 05 #Python
如何导出python安装的所有模块名称和版本号到文件中
Jun 05 #Python
在python中list作函数形参,防止被实参修改的实现方法
Jun 05 #Python
pycharm远程连接vagrant虚拟机中mariadb数据库
Jun 05 #Python
浅谈python 调用open()打开文件时路径出错的原因
Jun 05 #Python
Python命名空间namespace及作用域原理解析
Jun 05 #Python
Python3内置函数chr和ord实现进制转换
Jun 05 #Python
You might like
php自定义session示例分享
2014/04/22 PHP
smarty简单入门实例
2014/11/28 PHP
php生成shtml类用法实例
2014/12/09 PHP
简单谈谈PHP中的Reload操作
2016/12/12 PHP
php设计模式之备忘模式分析【星际争霸游戏案例】
2020/03/24 PHP
判断目标是否是window,document,和拥有tagName的Element的代码
2010/05/31 Javascript
jquery判断浏览器后退时候弹出消息的方法
2014/08/11 Javascript
jQuery中$.get、$.post、$.getJSON和$.ajax的用法详解
2014/11/19 Javascript
jQuery中dequeue()方法用法实例
2014/12/29 Javascript
JavaScript通过字典进行字符串翻译转换的方法
2015/03/19 Javascript
自定义jQuery插件方式实现强制对象重绘的方法
2015/03/23 Javascript
基于JavaScript创建动态Dom
2015/12/08 Javascript
Node.js重新刷新session过期时间的方法
2016/02/04 Javascript
JS查找数组中重复元素的方法详解
2017/06/14 Javascript
echarts饼图扇区添加点击事件的实例
2017/10/16 Javascript
利用百度地图API获取当前位置信息的实例
2017/11/06 Javascript
p5.js入门教程之小球动画示例代码
2018/03/15 Javascript
详解如何用babel转换es6的class语法
2018/04/03 Javascript
小程序实现多列选择器
2019/02/15 Javascript
JS中注入eval, Function等系统函数截获动态代码
2019/04/03 Javascript
Vue数据绑定实例写法
2019/08/06 Javascript
[18:16]sakonoko 2017年卡尔集锦
2018/02/06 DOTA
[04:59]2018DOTA2亚洲邀请赛 4.7 Mineski夺冠时刻
2018/04/09 DOTA
python实现比较两段文本不同之处的方法
2015/05/30 Python
Python编程实现控制cmd命令行显示颜色的方法示例
2017/08/14 Python
python学习将数据写入文件并保存方法
2020/06/07 Python
Python中random模块常用方法的使用教程
2020/10/04 Python
python实现图像高斯金字塔的示例代码
2020/12/11 Python
HTML5 本地存储和内容按需加载的思路和方法
2011/04/07 HTML / CSS
区域销售经理职责
2013/12/22 职场文书
暑期培训班招生方案
2014/08/26 职场文书
用 Python 元类的特性实现 ORM 框架
2021/05/19 Python
Python快速优雅的批量修改Word文档样式
2021/05/20 Python
微信小程序实现聊天室功能
2021/06/14 Javascript
tomcat正常启动但网页却无法访问的几种解决方法
2022/05/06 Servers
Redis特殊数据类型Geospatial地理空间
2022/06/01 Redis