Python面试题: 判断IP地址是否合法

题目: 给出一个字符串, 判断其是否是是合法的IP(IPv4)地址
思路

  1. 将字符串按"."分割成4段得到一个列表
  2. 逐个判断列表中的字符串是否数字格式并且在0~255之间, 是在新列表对应位置保存True, 不是保存False
  3. 判断新列表中是否有False

实现代码

#!/usr/bin/python3


def  is_ipv4(ip: str) -> bool:
    """
    检查ip是否合法
    :param: ip ip地址
    :return: True 合法 False 不合法
    """
   return True  if [1] * 4 == [x.isdigit() and 0 <= int(x) <= 255 for x in ip.split(".")] else False

print(is_ipv4("192.168.1.2a0"))

注: 因为True==1, [1, 1, 1, 1] 相当于[True, True, True, True]

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • https://nodejs.org/api/documentation.html 工具模块 Assert 测试 ...
    KeKeMars阅读 11,500评论 0 6
  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 8,455评论 0 4
  • 本篇文章全部copy自廖雪峰老师的Python入门教程,仅供学习用教程链接:Python入门 数据类型 整数 py...
    WangGavin阅读 2,994评论 1 3
  • 官网 中文版本 好的网站 Content-type: text/htmlBASH Section: User ...
    不排版阅读 9,946评论 0 5
  • 最近看张德芬的都市身心灵修行系列,感概很多。作为一个阶段话题的复盘,想说说自己的感受。看书的初衷是想找方法...
    袅袅逗阅读 1,469评论 0 3