簡體   English   中英

Python - 將變量作為鍵和值保存到字典

[英]Python - save variables as keys and values to dict

我有一個測驗,其中class是用戶的班級(1,2 或 3), name是用戶的姓名, score是用戶的分數。 如果同一用戶再次完成測驗, classname將相同,但score會有所不同。

我想要做的是將數據存儲為:

scores_class1 = {
  'myname': [5, 4, 5, 10, 9],
  'otherperson': [10],
}

如果用戶在第 1 類,他的namescore將存儲在名為scores_class1的字典中,而不是上面格式的scores_class2scores_class3 此外,如果用戶已經參加過一次測驗,它只會將他的分數添加到列表中,而不是創建重復的鍵。

您不能使變量名動態化,但是您可以從 class_num=2 構造一個字符串(不能使用類,保留字)並將該名稱用作字典中的鍵:

from collections import defaultdict

classes = defaultdict(dict)
class_num = 2
classes['scores_class%s' % class_num]['myname'] = [5, 4, 5, 10, 9]
classes['scores_class%s' % class_num]['otherperson'] = [10]

結果將是:

defaultdict(<type 'dict'>, {'scores_class2': {'myname': [5, 4, 5, 10, 9], 'otherperson': [10]}})

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM