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]


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM