python如何判断IP地址是不是合法
发布时间:2022-04-18 13:50:29 所属栏目:语言 来源:互联网
导读:python如何判断IP地址是否合法?很多新手不知道IP地址是否合法要怎么判断,这篇文章就给大家介绍一下python3判断IP地址的具体代码,感兴趣的朋友可以看一下。 输入一串字符,判断该字符串是否为点分十进制的IP地址,若是则转换为16进制输出,否则输出Error
python如何判断IP地址是否合法?很多新手不知道IP地址是否合法要怎么判断,这篇文章就给大家介绍一下python3判断IP地址的具体代码,感兴趣的朋友可以看一下。 输入一串字符,判断该字符串是否为点分十进制的IP地址,若是则转换为16进制输出,否则输出“Error” 注意:输入可能是任意的一个字符串,比如“abc.bas.fefe.4r4”或者“23.23.11.23.123” 这都是不合法的IP地址 例如 输入:192.41.6.20 输出:0xC0290614 输入:257.32.23.1 输出:Error import re def isIP(str): p = re.compile('^((25[0-5]|2[0-4]d|[01]?dd?).){3}(25[0-5]|2[0-4]d|[01]?dd?)$') if p.match(str): return True # else: # return False myStr = input() if isIP(myStr): print(IP(myStr).strHex().upper()) # ip = list(map(int, myStr.split('.'))) # print('0x', end='') # for i in ip: # print(hex(i)[2:].upper().rjust(2, '0'), end='') else: print('Error') l = input().split(".") if len(l) != 4: print("Error") else: s = "" for i in l: try: num = int(i) if num > 255 or num < 0: print("Error") s = "" break else: s += hex(num)[2:].upper().rjust(2, "0") except ValueError: print("Error") s = "" break if s: print("0x" + s) 以上就是关于python判断IP地址是否合法的代码介绍,有需要的朋友可以参考一下,更多python的相关内容大家可以看一下看。 (编辑:常州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |