用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中enumerate的用法实例解析
Aug 18 Python
Python中的字典与成员运算符初步探究
Oct 13 Python
手把手教你用python抢票回家过年(代码简单)
Jan 21 Python
批量将ppt转换为pdf的Python代码 只要27行!
Feb 26 Python
图解Python变量与赋值
Apr 03 Python
pandas将多个dataframe以多个sheet的形式保存到一个excel文件中
Oct 10 Python
python 队列基本定义与使用方法【初始化、赋值、判断等】
Oct 24 Python
python 错误处理 assert详解
Apr 20 Python
python中常见错误及解决方法
Jun 21 Python
PyQt5多线程防卡死和多窗口用法的实现
Sep 15 Python
通过案例解析python鸭子类型相关原理
Oct 10 Python
python利用faker库批量生成测试数据
Oct 15 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中转义mysql语句的实现代码
2011/06/24 PHP
php模拟服务器实现autoindex效果的方法
2015/03/10 PHP
php简单图像创建入门实例
2015/06/10 PHP
如何在标题栏显示框架内页面的标题
2007/02/03 Javascript
Js 本页面传值实现代码
2009/05/17 Javascript
jquery获取被勾选的checked(选中)的那一行的3列和4列的值
2013/07/04 Javascript
[将免费进行到底]在Amazon的一年免费服务器上安装Node.JS, NPM和OurJS博客
2014/08/18 Javascript
javascript中Array数组的迭代方法实例分析
2015/02/04 Javascript
jQuery的remove()方法使用详解
2015/08/11 Javascript
js实现input框文字动态变换显示效果
2015/08/19 Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
2016/06/24 Javascript
JQuery 设置checkbox值二次无效的解决方法
2016/07/22 Javascript
微信小程序侧边栏滑动特效(左右滑动)
2017/01/23 Javascript
Vue.js实战之组件的进阶
2017/04/04 Javascript
angularJs中orderBy筛选以及filter过滤数据的方法
2018/09/30 Javascript
[03:42]2014DOTA2西雅图国际邀请赛 Navi战队巡礼
2014/07/07 DOTA
Python实现的简单万年历例子分享
2014/04/25 Python
Python编程中的异常处理教程
2015/08/21 Python
python 简单的多线程链接实现代码
2016/08/28 Python
使用python中的in ,not in来检查元素是不是在列表中的方法
2018/07/06 Python
python 字典中取值的两种方法小结
2018/08/02 Python
Python模拟浏览器上传文件脚本的方法(Multipart/form-data格式)
2018/10/22 Python
Python实现随机创建电话号码的方法示例
2018/12/07 Python
Python的UTC时间转换讲解
2019/02/26 Python
详解python 破解网站反爬虫的两种简单方法
2020/02/09 Python
new_zeros() pytorch版本的转换方式
2020/02/18 Python
python调用jenkinsAPI构建jenkins,并传递参数的示例
2020/12/09 Python
俄罗斯游戏商店:Buka
2020/03/01 全球购物
关于Assembly命名空间的三个面试题
2015/07/23 面试题
优秀三好学生事迹材料
2014/08/31 职场文书
学校推普周活动总结
2015/05/07 职场文书
信用卡工资证明范本
2015/06/19 职场文书
女性健康讲座主持词
2015/07/04 职场文书
幼儿园安全教育随笔
2015/08/14 职场文书
小学体育跳绳课教学反思
2016/02/16 职场文书
python处理json数据文件
2022/04/11 Python