gpt4 book ai didi

python - 将 IP 字符串转换为数字,反之亦然

转载 作者:IT老高 更新时间:2023-10-28 21:38:08 27 4
gpt4 key购买 nike

我将如何使用 python 来转换以 str 形式出现的 IP 地址到十进制数,反之亦然?

例如,对于 IP 186.99.109.000 <type'str'> ,我想要一个十进制或二进制的形式,方便存入数据库,然后检索。

最佳答案

将 IP 字符串转换为长整数:

import socket, struct

def ip2long(ip):
"""
Convert an IP string to long
"""
packedIP = socket.inet_aton(ip)
return struct.unpack("!L", packedIP)[0]

反过来:

>>> socket.inet_ntoa(struct.pack('!L', 2130706433))
'127.0.0.1'

关于python - 将 IP 字符串转换为数字,反之亦然,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9590965/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com