首页 > 解决方案 > 有人可以帮我弄清楚如何成功运行这个程序吗?

问题描述

目标是让计算机在给定上限和下限的情况下猜测一个数字,计算机应将“否”作为输入并再次运行程序,直到给出“是”。

这是我现在使用的代码,但是由于返回函数的位置,循环只运行一次。如果我把它拿出来直接跳起来打印它会连续运行。

import random

num1 = int(input("enter your minumum value: "))
num2 = int(input("enter your maximum value: ")) 
def number_choice(num1,num2):
    guess = "no"
    while guess == "no": 
        return random.choice(range(num1,num2))
print (number_choice(num1,num2))
guess = input("is that your number, enter yes or no: ")

标签: pythonpython-3.xloops

解决方案


尝试这个:

import random

num1 = int(input("enter your minimum value: "))
num2 = int(input("enter your maximum value: "))
def number_choice(num1,num2):
        print(random.choice(range(num1,num2)))
guess='no'
while guess.lower()=='no':
    number_choice(num1,num2)
    guess = input("Is that your number, enter yes or no: ")
print('Cheers!')

或者你也可以使用它:

import random

num1 = int(input("enter your minimum value: "))
num2 = int(input("enter your maximum value: ")) 
def number_choice(num1,num2):
    print(rnd.choice(range(num1,num2)))
    guess=input('Is this your number? Type yes or no ')
    if guess=='no':
        number_choice(num1,num2)
    else:
        print('cheers!')

number_choice(num1,num2)

希望能帮助到你!


推荐阅读