为什么会把3判定不在0到255之间
这是代码
while True:
T = "Y"
n = input()
b = n.split(".")
if n.count(".") != 3:
T = "N"
print(1)
break
for i in range(4):
if "0" <= b[i]<="255":
print(b[i])
pass
else:
T="N"
break
print(T)
while True:
T = "Y"
n = input()
b = n.split(".")
if n.count(".") != 3:
T = "N"
print(1)
break
for i in range(4):
if 0 <= int(b[i])<=255:
print(b[i])
pass
else:
T="N"
break
print(T)
改成上面这样就好了。原因在于你是按字符进行判断的,应该按整数类型判断
if n.count(".") != 3: # 这个意思是, 如果输入不是 a.b.c.d (有 3 个 ‘.’ 的格式),就停止执行。