代码之家  ›  专栏  ›  技术社区  ›  mani ch

Python:反向猜谜游戏

  •  1
  • mani ch  · 技术社区  · 1 年前

    我为一个反向猜谜游戏写了这段代码,但它第一次打印了两次c。记住(d=正确)(b=更大)(k=更小)。

    import random
    c = random.randint(1,99)
    print(c)
    a = str(input())
    while a != "d":
        if a == "b":
            print(c)
            c = random.randint(c,99)
            a = str(input())
        elif a == "k":        
            print(c)
            c = random.randint(1,c)
            a = str(input())
        elif a == "d":
         break
    

    输出如下所示:

    67
    b
    67
    

    我想要67打印一次。

    我试着移除 print(c) 在第3、7、11行中。

    2 回复  |  直到 1 年前
        1
  •  1
  •   dda    1 年前

    如果您不想打印c两次,只需像第一次那样在生成新的随机数后添加print语句即可。

        2
  •  0
  •   Masih    1 年前

    这应该有效

    import random
    c=random.randint(1,99)
    print(c)
    a=str(input())
    while a!="d":
        if a=="b":
            c=random.randint(c,99)
            print(c)
            a=str(input())
        elif a=="k":
            c=random.randint(1,c)
            print(c)
            a=str(input())
        elif a=="d":
         break