用Python将IP地址在整型和字符串之间轻松转换


Posted in Python onMarch 22, 2017

前言

大家应该都有所体会,对于字符串型的IP存入数据库中,实在是个即浪费空间又浪费性能的家伙,所以可爱的人们想出来将IP转换为整型存储。MySQL中存在INET_ATON()INET_NTOA()函数进行IP整型和字符串之间的转换,那么Python中存在什么方法可以实现MySQL中INET_ATON()INET_NTOA()的功能呢?方法肯定是有的~

方法如下

# 导入相关模块包
import socket
import struct
# 将IP从字符串转为整型
>>> int(socket.inet_aton('127.0.0.1').encode('hex'),16)
2130706433
# 将IP从整型转为字符串
>>> socket.inet_ntoa(struct.pack("!I",2130706433))
'127.0.0.1'

拓展

Python下利用正则表达式来匹配校验一个字符串是否为ip地址

def checkip(ip): 
 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(ip): 
 return True 
 else: 
 return False

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python根据出生日期返回年龄的方法
Mar 26 Python
Python的gevent框架的入门教程
Apr 29 Python
Python中处理字符串之isalpha()方法的使用
May 18 Python
十条建议帮你提高Python编程效率
Feb 16 Python
Python实现文件信息进行合并实例代码
Jan 17 Python
python得到电脑的开机时间方法
Oct 15 Python
如何解决tensorflow恢复模型的特定值时出错
Feb 06 Python
python3正则模块re的使用方法详解
Feb 11 Python
Python requests获取网页常用方法解析
Feb 20 Python
Python基础类继承重写实现原理解析
Apr 03 Python
如何使用Python实现一个简易的ORM模型
May 12 Python
PyTorch梯度裁剪避免训练loss nan的操作
May 24 Python
用python写一个windows下的定时关机脚本(推荐)
Mar 21 #Python
利用Python实现Windows定时关机功能
Mar 21 #Python
使用Python生成XML的方法实例
Mar 21 #Python
Python存取XML的常见方法实例分析
Mar 21 #Python
Python正则简单实例分析
Mar 21 #Python
Python处理XML格式数据的方法详解
Mar 21 #Python
Python做简单的字符串匹配详解
Mar 21 #Python
You might like
谈谈新手如何学习PHP
2006/12/23 PHP
php提交post数组参数实例分析
2015/12/17 PHP
yii2使用ajax返回json的实现方法
2016/05/14 PHP
php删除txt文件指定行及按行读取txt文档数据的方法
2017/01/30 PHP
解决PHP上传非标准格式的图片pjpeg失败的方法
2017/03/12 PHP
精选的10款用于构建良好易用性网站的jQuery插件
2011/01/23 Javascript
js字符串的各种格式的转换 ToString,Format
2011/08/08 Javascript
原生javascript实现获取指定元素下所有后代元素的方法
2014/10/28 Javascript
学习JavaScript正则表达式
2015/11/13 Javascript
jquery实现右侧栏菜单选择操作
2016/03/04 Javascript
详解jQuery中的事件
2016/12/14 Javascript
Javascript 高性能之递归,迭代,查表法详解及实例
2017/01/08 Javascript
微信小程序 radio单选框组件详解及实例代码
2017/01/10 Javascript
Vue-Access-Control 前端用户权限控制解决方案
2017/12/01 Javascript
浅谈React组件之性能优化
2018/03/02 Javascript
JS实现计算小于非负数n的素数的数量算法示例
2019/02/26 Javascript
vue项目中mock.js的使用及基本用法
2019/05/22 Javascript
Python 文件重命名工具代码
2009/07/26 Python
Python常用小技巧总结
2015/06/01 Python
Pycharm学习教程(6) Pycharm作为Vim编辑器使用
2017/05/03 Python
对numpy中数组元素的统一赋值实例
2018/04/04 Python
使用matplotlib画散点图的方法
2018/05/25 Python
Python socket实现的简单通信功能示例
2018/08/21 Python
Python爬虫实战之12306抢票开源
2019/01/24 Python
libreoffice python 操作word及excel文档的方法
2019/07/04 Python
用sqlalchemy构建Django连接池的实例
2019/08/29 Python
python3实现弹弹球小游戏
2019/11/25 Python
Centos7下源码安装Python3 及shell 脚本自动安装Python3的教程
2020/03/07 Python
python使用pymongo与MongoDB基本交互操作示例
2020/04/09 Python
关于Theano和Tensorflow多GPU使用问题
2020/06/19 Python
优秀语文教师事迹
2014/05/18 职场文书
反腐倡廉标语
2014/06/24 职场文书
党员群众路线对照检查材料
2014/08/31 职场文书
医德考评自我评价
2014/09/14 职场文书
2014标准社保办理委托书
2014/10/06 职场文书
springboot入门 之profile设置方式
2022/04/04 Java/Android