西楼z 2021-04-08 23:19 采纳率: 100%
浏览 44
已采纳

大一萌新求助,不知道怎么办

为什么会把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)

 

  • 写回答

2条回答 默认 最新

  • soar3033 2021-04-09 08:01
    关注
    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)
    

    改成上面这样就好了。原因在于你是按字符进行判断的,应该按整数类型判断

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记