Maison  >  Article  >  développement back-end  >  Comment utiliser Python pour convertir l'IP entre des entiers et des chaînes

Comment utiliser Python pour convertir l'IP entre des entiers et des chaînes

Y2J
Y2Joriginal
2017-05-04 11:57:281680parcourir

Cet article vous présente principalement les informations pertinentes sur l'utilisation de Python pour convertir facilement l'IP entre des entiers et des chaînes. L'article partage également avec vous l'utilisation d'expressions régulières en Python pour faire correspondre et vérifier si une chaîne est Les amis qui en ont besoin peuvent. reportez-vous à la méthode de l'adresse IP. Jetons un coup d'œil ci-dessous.

Avant-propos

Tout le monde aurait dû comprendre que stocker une adresse IP de chaîne dans la base de données est un gaspillage d'espace et de performances, donc la belle. les gens ont compris comment convertir l'adresse IP en stockage entier. Il existe des fonctions INET et _ATON() INET_NTOA() dans MySQL pour convertir entre les entiers IP et les chaînes Alors, quelles méthodes existent en Python pour implémenter INET_ATON() et INET_NTOA() dans MySQL. ? Qu'en est-il de la fonction de

 ? Il doit y avoir une méthode~

La méthode est la suivante

# 导入相关模块包
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'

Développer

Utilisez des expressions régulières en Python pour faire correspondre et vérifier si une chaîne est une adresse 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

Résumé

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn