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 相关文章推荐
python中字典dict常用操作方法实例总结
Apr 04 Python
Python中字符串对齐方法介绍
May 21 Python
Python输出9*9乘法表的方法
May 25 Python
python实现在windows服务中新建进程的方法
Jun 30 Python
Python argv用法详解
Jan 08 Python
Python各类图像库的图片读写方式总结(推荐)
Feb 23 Python
Python中return self的用法详解
Jul 27 Python
Python中Proxypool库的安装与配置
Oct 19 Python
python实现移位加密和解密
Mar 22 Python
python实现合并多个list及合并多个django QuerySet的方法示例
Jun 11 Python
使用Python调取任意数字资产钱包余额功能
Aug 15 Python
Python通过len函数返回对象长度
Oct 22 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执行速度全攻略(上)
2006/10/09 PHP
实测在class的function中include的文件中非php的global全局环境
2013/07/15 PHP
phalcon框架使用指南
2016/02/23 PHP
php基于curl实现的股票信息查询类实例
2016/11/11 PHP
swoole和websocket简单聊天室开发
2017/11/18 PHP
JavaScript版代码高亮
2006/06/26 Javascript
jqgrid 简单学习笔记
2011/05/03 Javascript
jQuery截取指定长度字符串代码
2014/08/21 Javascript
JavaScript中数组成员的添加、删除介绍
2014/12/30 Javascript
JS模仿编辑器实时改变文本框宽度和高度大小的方法
2015/08/17 Javascript
JQuery Mobile实现导航栏和页脚
2016/03/09 Javascript
详解vue-router基本使用
2017/04/18 Javascript
详解VueJS应用中管理用户权限
2018/02/02 Javascript
微信小程序 button样式设置为图片的方法
2020/06/19 Javascript
[01:29:17]RNG vs Liquid 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.23
2019/09/05 DOTA
Python利用字典将两个通讯录文本合并为一个文本实例
2018/01/16 Python
Python网络爬虫中的同步与异步示例详解
2018/02/03 Python
用pycharm开发django项目示例代码
2018/10/24 Python
python矩阵/字典实现最短路径算法
2019/01/17 Python
Python Selenium 之关闭窗口close与quit的方法
2019/02/13 Python
浅谈图像处理中掩膜(mask)的意义
2020/02/19 Python
解析pip安装第三方库但PyCharm中却无法识别的问题及PyCharm安装第三方库的方法教程
2020/03/10 Python
使用PyQt的QLabel组件实现选定目标框功能的方法示例
2020/05/19 Python
利用OpenCV中对图像数据进行64F和8U转换的方式
2020/06/03 Python
Python引入多个模块及包的概念过程解析
2020/09/21 Python
Django model class Meta原理解析
2020/11/14 Python
如何用tempfile库创建python进程中的临时文件
2021/01/28 Python
Backcountry旗下的户外商品闪购网站:steep&cheap
2016/09/22 全球购物
学校周年庆活动方案
2014/08/22 职场文书
防暑降温通知书
2015/04/27 职场文书
行政处罚告知书
2015/07/01 职场文书
学校隐患排查制度
2015/08/05 职场文书
暑假打工感想
2015/08/07 职场文书
PyTorch 如何设置随机数种子使结果可复现
2021/05/12 Python
MyBatis 动态SQL全面详解
2021/10/05 MySQL
Java 数据结构七大排序使用分析
2022/04/02 Java/Android