def is_valid_IP(ip: str) -> bool:
ips = ip.split(".")
if len(ips) == 4:
for i in ips:
if not i.isdigit() or (i.startswith("0") and len(i) > 1) or int(i) < 0 or int(i) > 255:
return False
return True
else:
return False
assert is_valid_IP('12.255.56.1') is True
assert is_valid_IP('abc.def.ghi.jkl') is False
assert is_valid_IP('123.456.789.0') is False
assert is_valid_IP('0.0.0.0') is True
assert is_valid_IP('01.02.03.04') is False
def is_valid_ip(ip:str)->bool:
ip_list=ip.split('.')
num=0
for i in ip_list:
if i.isdigit():
if int(i)>=0 and int(i)<=255:
if str(int(i))==i:
num=num+1
if num==4:
return True
else:
return False
from re import compile, match
def is_valid_IP(ip: str) -> bool:
REGEX = compile(r'^((25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){3}'
r'(25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$')
return bool(match(REGEX, ip))
assert is_valid_IP('12.255.56.1') is True
assert is_valid_IP('abc.def.ghi.jkl') is False
assert is_valid_IP('123.456.789.0') is False
assert is_valid_IP('0.0.0.0') is True
assert is_valid_IP('01.02.03.04') is False
def is_valid_IP(ip: str) -> bool:
return ip.count('.')==3 and all(o.isdigit() and 0<=int(o)<=255 and str(int(o))==o for o in ip.split('.'))
assert is_valid_IP('12.255.56.1') is True
assert is_valid_IP('abc.def.ghi.jkl') is False
assert is_valid_IP('123.456.789.0') is False
assert is_valid_IP('0.0.0.0') is True
assert is_valid_IP('01.02.03.04') is False