Python 으로 IP 주 소 를 정형 과 문자열 사이 에서 쉽게 변환 합 니 다.

1074 단어 python정형문자열
머리말
문자열 형 IP 를 데이터베이스 에 저장 하 는 것 은 공간 을 낭비 하고 성능 을 낭비 하 는 녀석 이기 때문에 귀여운 사람들 은 IP 를 정형 저장 소로 바 꾸 려 고 한다.MySQL 에 INET_ATON(),INET_NTOA()함수 가 존재 하여 IP 정형 과 문자열 간 의 전환 을 한다 면 Python 에 MySQLINET_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 
총결산
이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 셔 서 저희 에 대한 지지 에 감 사 드 립 니 다.

좋은 웹페이지 즐겨찾기