用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 相关文章推荐
浅谈django中的认证与登录
Oct 31 Python
Python编程实现控制cmd命令行显示颜色的方法示例
Aug 14 Python
使用Python实现微信提醒备忘录功能
Dec 04 Python
对python内置map和six.moves.map的区别详解
Dec 19 Python
python3中property使用方法详解
Apr 23 Python
Python中typing模块与类型注解的使用方法
Aug 05 Python
python thrift 实现 单端口多服务的过程
Jun 08 Python
解决python打开https出现certificate verify failed的问题
Sep 03 Python
python 两种方法修改文件的创建时间、修改时间、访问时间
Sep 26 Python
最新PyCharm从安装到PyCharm永久激活再到PyCharm官方中文汉化详细教程
Nov 17 Python
pytorch 实现变分自动编码器的操作
May 24 Python
python cv2图像质量压缩的算法示例
Jun 04 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赋值的内部是如何跑的详解
2019/01/13 PHP
php的优点总结 php有哪些优点
2019/07/19 PHP
PHP查找一列有序数组是否包含某值的方法
2020/02/07 PHP
Javascript - HTML的request类
2006/07/15 Javascript
HTML中的setCapture和releaseCapture使用介绍
2012/03/21 Javascript
基于jQuery的获取标签名的代码
2012/07/16 Javascript
js打开windows上的可执行文件示例
2014/05/27 Javascript
使用upstart把nodejs应用封装为系统服务实例
2014/06/01 NodeJs
JavaScript极简入门教程(一):基础篇
2014/10/25 Javascript
浅谈js数据类型判断与数组判断
2016/08/29 Javascript
JS锚点的设置与使用方法
2016/09/05 Javascript
Vue.js动态添加、删除选题的实例代码
2016/09/30 Javascript
vue内置组件transition简单原理图文详解(小结)
2018/07/12 Javascript
JS浮点数运算结果不精确的Bug解决
2019/08/01 Javascript
JavaScript实现随机点名器
2020/03/25 Javascript
微信小程序实现列表的横向滑动方式
2020/07/15 Javascript
有关wxpython pyqt内存占用问题分析
2014/06/09 Python
python实现在sqlite动态创建表的方法
2015/05/08 Python
Python 迭代器与生成器实例详解
2017/05/18 Python
Python编程之黑板上排列组合,你舍得解开吗
2017/10/30 Python
python selenium UI自动化解决验证码的4种方法
2018/01/05 Python
flask入门之文件上传与邮件发送示例
2018/07/18 Python
PyQt5实现五子棋游戏(人机对弈)
2020/03/24 Python
selenium+python截图不成功的解决方法
2019/01/30 Python
python mysql中in参数化说明
2020/06/05 Python
Python 2.6.6升级到Python2.7.15的详细步骤
2020/12/14 Python
一款基于css3的动画按钮代码教程
2014/11/23 HTML / CSS
个人廉洁自律承诺书
2014/03/27 职场文书
《神奇的克隆》教学反思
2014/04/10 职场文书
酒店周年庆活动方案
2014/08/21 职场文书
中国梦演讲稿开场白
2014/08/28 职场文书
安全伴我行演讲稿
2014/09/04 职场文书
先进教师个人事迹材料
2014/12/15 职场文书
Python绘制地图神器folium的新人入门指南
2021/05/23 Python
Pandas自定义选项option设置
2021/07/25 Python
css3手动实现pc端横向滚动
2022/06/21 HTML / CSS