Python-运行循环3次

Vin*_*ink 4 python loops

因此,我有这份作业,并且对一个我不知道该怎么做的零件有疑问,你们可以帮我吗?

def main():

 # Please see the comments 

    largest = 0

    for index in range(3):  # Enter the value(s) in the parenthesis to run the loop 3 times
        number1 = int(input("Please enter the first number: "))

        number2 = int(input("Please enter the second number: "))

        number3 = int(input("Please enter the third number: "))



    # insert call to function find_largest after this comment.
    # find_largest will take in three parameters and will return the largest of the 3 numbers

    result = find_largest(number1, number2, number3)

    # insert the statement to print the three numbers entered and the largest number after this comment.
    print("The numbers you entered were, \n", [number1, number2, number3]) 
    print ("The largest of the numbers you entered is", result)


def find_largest(a, b, c):

    # insert parameters in the parenthesis
    # Write the code for this function here.
    # find_largest will take in three parameters and will return the largest of the 3 numbers
    # These three numbers are passed in as parameters from the main function
    # Hint: if and elif - no loop needed here

    if (a > b) and (a > c):
       largest = a
    elif (b > a) and (b > c):
       largest = b
    else:
       largest = c

    return largest


main()    # this is the call to main() that will make the program run
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是这一部分:

for index in range(3):  # Enter the value(s) in the parenthesis to run the loop 3 times
Run Code Online (Sandbox Code Playgroud)

我不知道要添加什么,因此在找到最大数量后循环又运行了2次

Tot*_*tem 6

您拥有的循环使循环的前两次迭代变得毫无意义,因为每次循环时,您都将新数字重新分配给三个数字变量。结果,只有在循环的最后一次迭代中输入的数字才用于任何事物。我认为这会更有意义:

numbers = []

for i in range(3):
    input = int(input("Enter number: "))
    numbers.append(input)
Run Code Online (Sandbox Code Playgroud)

这将为您提供一个称为数字的列表,其中包含用户输入的3个数字。然后,您可以对他们进行所需的操作。话虽如此,您实际上不需要for循环即可执行此操作。正如克雷格·伯格勒(Craig Burgler)所述。

或者(尽管这不使用范围...):

number1 = 0
number2 = 0
number3 = 0

for i in (number1, number2, number3):
    i = int(input("Enter number: "))
Run Code Online (Sandbox Code Playgroud)


Cra*_*ler 0

编写的代码将要求输入 3 次三个数字覆盖用户输入的第一组和第二组数字。如果作业是从用户那里获取三个数字并告诉用户哪个数字最大,则不需要循环for。三个输入语句就可以解决问题。