這篇文章主要介紹了python將ip地址轉換成整數的方法,涉及Python針對IP地址的轉換技巧,需要的朋友可以參考下
本文實例講述了python將ip地址轉換成整數的方法。分享給大家供大家參考。具體分析如下:
有時候我們用數據庫存儲ip地址時可以將ip地址轉換成整數存儲,整數占用空間小,索引也會比較方便,下面的python代碼自定義了一個ip轉換成整數的函數,非常簡單,代碼同時還提供了整數轉換成ip地址的方法。
? 1 2 3 4 5 6 7 import socket, struct def ip2long(ip): """ Convert an IP string to long """ packedIP = socket.inet_aton(ip) return struct.unpack("!L", packedIP)[0]例如 www.jb51.net的ip地址為:61.129.51.27,調用上面的ip2long轉換函數:
? 1 print('www.jb51.net ip address is %s'%ip2long('61.129.51.27'))輸出結果為:
? 1 www.jb51.net ip address is 1031877403如果要將整數轉換成ip地址,可以使用下面的方法:
? 1 socket.inet_ntoa(struct.pack('!L', 2130706433))輸出結果為:
? 1 '127.0.0.1'希望本文所述對大家的Python程序設計有所幫助。