要使用Python的ipaddress模块验证IP地址,请按照以下步骤操作:
-
首先,确保已经安装了Python 3.3或更高版本。ipaddress模块自Python 3.3起被内置到标准库中。
-
然后,在您的Python代码中,导入ipaddress模块。
-
使用ipaddress模块中的
IPv4Address
或IPv6Address
类来验证给定的IP地址字符串。
下面是一个简单的示例:
import ipaddress def validate_ip(ip_address): try: ipaddress.IPv4Address(ip_address) return True except ipaddress.AddressValueError: try: ipaddress.IPv6Address(ip_address) return True except ipaddress.AddressValueError: return False # 测试IP地址 ip1 = "192.168.1.1" ip2 = "2001:0db8:85a3:0000:0000:8a2e:0370:7334" ip3 = "invalid_ip" print(validate_ip(ip1)) # 输出:True print(validate_ip(ip2)) # 输出:True print(validate_ip(ip3)) # 输出:False
在这个示例中,我们定义了一个名为validate_ip
的函数,该函数尝试将给定的IP地址字符串转换为IPv4Address或IPv6Address对象。如果转换成功,则返回True,表示该IP地址有效。如果转换失败,则捕获AddressValueError
异常并尝试将IP地址字符串转换为IPv6Address对象。如果IPv6Address转换也失败,则返回False,表示该IP地址无效。