当前位置:Gxlcms > Python > python实现判断一个字符串是否是合法IP地址

python实现判断一个字符串是否是合法IP地址

时间:2021-07-01 10:21:17 帮助过:305人阅读

这篇文章主要介绍了关于python实现判断一个字符串是否是合法IP地址,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下

一个刚结束的笔试题目,简单贴一下吧,下面是具体实现:

  1. #!usr/bin/env python
  2. #encoding:utf-8
  3. '''
  4. __Author__:沂水寒城
  5. 功能:判断一个字符串是否是合法IP地址
  6. '''
  7. import re
  8. def judge_legal_ip(one_str):
  9. '''
  10. 正则匹配方法
  11. 判断一个字符串是否是合法IP地址
  12. '''
  13. compile_ip=re.compile('^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$')
  14. if compile_ip.match(one_str):
  15. return True
  16. else:
  17. return False
  18. def judge_legal_ip2(one_str):
  19. '''
  20. 简单的字符串判断
  21. '''
  22. if '.' not in one_str:
  23. return False
  24. elif one_str.count('.')!=3:
  25. return False
  26. else:
  27. flag=True
  28. one_list=one_str.split('.')
  29. for one in one_list:
  30. try:
  31. one_num=int(one)
  32. if one_num>=0 and one_num<=255:
  33. pass
  34. else:
  35. flag=False
  36. except:
  37. flag=False
  38. return flag
  39. if __name__=='__main__':
  40. ip_list=['','172.31.137.251','100.10.0.1000','1.1.1.1','12.23.13','aa.12.1.2','12345678','289043jdhjkbh']
  41. for one_str in ip_list:
  42. if judge_legal_ip(one_str): #正则方法
  43. #if judge_legal_ip2(one_str): #字符串方法
  44. print '{0} is a legal ip address!'.format(one_str)
  45. else:
  46. print '{0} is not a legal ip address!'.format(one_str)

结果如下:

  1. is not a legal ip address!
  2. 172.31.137.251 is a legal ip address!
  3. 100.10.0.1000 is not a legal ip address!
  4. 1.1.1.1 is a legal ip address!
  5. 12.23.13 is not a legal ip address!
  6. aa.12.1.2 is not a legal ip address!
  7. 12345678 is not a legal ip address!
  8. 289043jdhjkbh is not a legal ip address!

相关推荐:

python实现判断数组是否包含指定元素的方法

以上就是python实现判断一个字符串是否是合法IP地址的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行