【发布时间】:2016-03-03 02:21:30
【问题描述】:
我有大量字符串,我已经知道它包含一个 IP 地址,我想确定它是 IPv4 还是 IPv6。目前我正在检查字符串是否包含冒号:
version = 4
if ':' in ip_string:
version = 6
鉴于我们已经知道它是一个 IP 地址,是否有更快的方法来确定 IP 版本。上述简单的检查是否有可能返回错误的结果(例如是否有可能有一个不带冒号的 IPv6 地址)?
【问题讨论】:
-
你用的是什么版本的 Python?
-
IPv6 地址使用冒号
:,而不是分号;。 IPv6 地址的字符串表示形式将包含一个冒号。 -
@idjaw python 2.7,我还编辑了标签以添加它
-
熟能生巧。 :)
-
@Vasilis 我不同意这一点。读这个。可能会导致某些事情或给您更多提示。 stackoverflow.com/a/3462840/1832539
标签: python python-2.7 ipv6 ipv4