源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

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

  • 时间:2021-05-10 18:08 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:用Python将IP地址在整型和字符串之间轻松转换
[b]前言[/b] 大家应该都有所体会,对于字符串型的IP存入数据库中,实在是个即浪费空间又浪费性能的家伙,所以可爱的人们想出来将IP转换为整型存储。MySQL中存在INET[code]_ATON()[/code] 、[code]INET_NTOA()[/code]函数进行IP整型和字符串之间的转换,那么Python中存在什么方法可以实现MySQL中[code]INET_ATON()[/code] 、[code]INET_NTOA()[/code]的功能呢?方法肯定是有的~ [b]方法如下[/b]
# 导入相关模块包
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'
[b]拓展[/b] 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 
[b]总结[/b] 以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对编程素材网的支持。
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部