我的问题是我想制作一个显示姓名和分数的程序。我想获得用户输入的数字和名称。如果名称在字典中,则它会将值附加到键,但如果它不是,则它将创建一个新的键值对。我已经尝试了几个小时,但似乎无法做到。
class_1 = {'Farid':9, 'Manraj':5, 'Andy':7, 'Sajid':3}
score=int(input("Enter a number"))
name=input("What is your name?")
if name in class_1.key():
class_1[name]=score
else:
class_1[name]=score
答案 0 :(得分:0)
无需使用key()
。只是做:
if name in class_1:
你并没有真正将新分数附加到现有分数上。你应该这样做:
class_1[name]+=score
所以你有
score=int(raw_input("Enter a number: "))
name=raw_input("What is your name?: ")
if name in class_1:
class_1[name]+=score
else:
class_1[name]=score
编辑:如果您想将新分数附加到旧分数并同时具有两个分数,则应将字典值定义为列表:
class_1 = {'Farid':[9], 'Manraj':[5], 'Andy':[7], 'Sajid':[3]}
然后,追加新分数:
if name in class_1:
class_1[name].append(score)