如何在使用循环时创建用户输入列表?

2024-06-02 06:37:09 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在创建一个函数,询问用户希望报告的睡眠天数,然后根据答案询问一周中的哪一天和睡眠时间。函数必须返回一个列表列表,其中包含一周中的天数和用户报告的睡眠时间。下面是我希望从python获得的desire输出的图片

enter image description here

到目前为止,我创建了一个基本代码,询问用户问题的内容,但我似乎难以适应while循环,无法根据用户想要报告的问题数量不断询问用户问题。下面是我迄今为止创建的代码

def healthy():
    days=int(input("How many days do you want to report?:"))
    day=input("Day of the week:")
    hours=int(input("Hours Slept:"))
    print([day,hours])
healthy()

Tags: 函数答案代码用户列表input报告时间
2条回答

您可以在range(days)上循环,然后将结果存储在列表列表中并从函数返回

def healthy():
    days = int(input("How many days do you want to report?:"))
    output = []
    for i in range(days):
        day = input("Day of the week:")
        hours = int(input("Hours Slept:"))
        output.append([day, hours])
    return output

输出

result = healthy()
How many days do you want to report?:2
Day of the week:Mon
Hours Slept:8
Day of the week:Tue
Hours Slept:4

print(result)
#[['Mon', 8], ['Tue', 4]]

这就是我的方法。另外,您不需要while循环,可以使用range(loops:int)

def healthy():
    info = []
    for i in range(int(input("How many days do you want to report?:"))):
        info.append([input("Day of the week:"),int(input("Hours Slept:"))])
    return info
print(healthy())

相关问题 更多 >