如何在字典中存储输入的信息?

时间:2018-11-25 21:16:11

标签: python dictionary

我想询问用户一个学生及其相应的ID号,然后将其添加到词典中。但是,如果用户想添加另一个学生,则不确定如何添加到词典中而不是替换另一个学生。目前,我的代码代替了以前的学生,而不是向学生的数据库中添加了另一个键和项。如何将另一个学生及其ID添加到数据库/词典中?

while input("Would you like to add a student? ") == "yes":
    name = input("What is the student's name?: ")
    ID = input("What is the student's ID?: ")
    nameID = {ID: name}
    for ID in nameID.keys():
        print(nameID)
else:
    print(nameID)

2 个答案:

答案 0 :(得分:2)

之所以没有获得预期的结果,是因为每次创建新学生时,您也会创建新字典。因此,如果仅将学生添加到现有字典中,就可以避免遇到的问题。

nameID = {}

while input("Would you like to add a student? ") == "yes":
    name = input("What is the student's name?: ")
    ID = input("What is the student's ID?: ")
    nameID[ID] = name
    for ID in nameID.keys():
        print(ID)
else:
    print(nameID)

答案 1 :(得分:0)

您的专线

nameID = {ID: name}

在该循环内一次又一次创建字典。创建一个空字典

nameID = {}

首先,然后在循环内向其中添加项目:

nameID[ID] = name

您也不需要循环nameID.keys()来打印它们。你可能是说

for id in nameID:
    print (id,nameID[id])