使用for循环针对每个键获取多个值

2024-07-07 05:31:46 发布

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

student_marks = {'Raj':[20,30,40,48], 'Raja':[25,35,46,22]}

我想写一个代码,使用户能够以上面概述的形式进行输入。我看到过针对每个键输入一个值的代码片段,但找不到一个将列表作为值输入的代码片段


Tags: 代码用户列表student形式rajamarksraj
2条回答
i = 0
marks_list = []
name = list(map(str, input("Enter names: ").split()))
while i < len(name):
    marks = list(map(int, input("Enter " + name[i] + " marks: ").split()))
    marks_list.append(marks)
    i += 1

student_marks = {name[i]: marks_list[i] for i in range(len(name))}

print(student_marks)

以下是有效的答案。 像这样输入

Enter names: Raj Raja
Enter Raj marks: 20 30 40 48
Enter Raja marks: 25 35 46 22

输出:

{'Raj': [20, 30, 40, 48], 'Raja': [25, 35, 46, 22]}

我猜你想要这样的东西

dic = {}
while True:
    student = input("enter student name : ")
    if student:
        mark = input("enter student mark split by ',' : ").split(",")
        dic.update({str(student): mark})
    else:
        break

print(dic)

相关问题 更多 >