ARONGLIN 发表于 2020-4-16 23:55:08

请问下怎么让这个程序重复运行?

import random

a = secret = random.randint(1,20)
b = secret = random.randint(1,20)
c = a + b

print(eval('a'),'+', eval('b'),'=')
temp = input ("请输入你的答案:")
guess = int(temp)
i=0#计数器

while True:
    if guess == c:
      print ("答对了!!!")
      break
    else:
      print ("回答错误!!!")
      i+=1
      if i < 3:
            temp = input("回答错误,继续回答:")
            guess = int (temp)
      else:
            print("回答还是错了哟,游戏结束!")
            i+=1
            break

txxcat 发表于 2020-4-17 00:49:20

加个循环就可以了,但要考虑如何退出循环。
import random

while True:      #加个循环就可以了
    a = secret = random.randint(1,20)
    b = secret = random.randint(1,20)
    c = a + b

    print(eval('a'),'+', eval('b'),'=')
    temp = input ("请输入你的答案:")
    if temp.lower()=='q':            #但要考虑退出机制,这里是按q键退出
      break
    guess = int(temp)
    i=0#计数器

    while True:
      if guess == c:
            print ("答对了!!!")
            break
      else:
            print ("回答错误!!!")
            i+=1
            if i < 3:
                temp = input("回答错误,继续回答:")
                guess = int (temp)
            else:
                print("回答还是错了哟,游戏结束!")
                i+=1
                break

sunrise085 发表于 2020-4-17 00:52:24

在外面加一层循环不就可以了么?
import random
while True:
    a = secret = random.randint(1,20)
    b = secret = random.randint(1,20)
    c = a + b

    print(eval('a'),'+', eval('b'),'=')
    temp = input ("请输入你的答案:")
    guess = int(temp)
    i=0#计数器

    while True:
      if guess == c:
            print ("答对了!!!")
            break
      else:
            print ("回答错误!!!")
            i+=1
            if i < 3:
                temp = input("回答错误,继续回答:")
                guess = int (temp)
            else:
                print("回答还是错了哟,游戏结束!")
                i+=1
                break

zltzlt 发表于 2020-4-17 08:13:03

在外面加一层循环。

import random

while True:
    a = random.randint(1, 20)# 这里给 secret 赋值没有意义,因为后面没有用到 secret,故可以删除
    b = random.randint(1, 20)
    c = a + b

    print(eval('a'), '+', eval('b'), '=')
    temp = input("请输入你的答案:")
    guess = int(temp)
    i = 0# 计数器

    while True:
      if guess == c:
            print("答对了!!!")
            break
      else:
            print("回答错误!!!")
            i += 1
            if i < 3:
                temp = input("回答错误,继续回答:")
                guess = int(temp)
            else:
                print("回答还是错了哟,游戏结束!")
                i += 1
                break

_2_ 发表于 2020-4-17 10:37:51

本帖最后由 _2_ 于 2020-4-17 10:41 编辑

import random
while 1:
    a = random.randint(1, 20)
    #这里没必要再赋值一个 secret,看了一下后面没有任何调用
    b = random.randint(1, 20)
    c = a + b

    print(eval('a'), '+', eval('b'), '=')
    temp = input("请输入你的答案:")
    #多了一个空格,不应写成 input ()
    #后面同理(后面只有 # 的)
    guess = int(temp)
    i=0#计数器

    while True:
      if guess == c:
            print("答对了!!!") #
            break
      else:
            print("回答错误!!!") #
            i+=1
            if i < 3:
                temp = input("回答错误,继续回答:")
                guess = int(temp) #
            else:
                print("回答还是错了哟,游戏结束!")
                i+=1
                break

ARONGLIN 发表于 2020-4-25 11:32:47

谢谢啦{:5_109:}

Twilight6 发表于 2020-4-26 09:13:29

ARONGLIN 发表于 2020-4-25 11:32
谢谢啦

那就快点最佳答案结账啊
页: [1]
查看完整版本: 请问下怎么让这个程序重复运行?