【发布时间】:2020-07-19 01:41:42
【问题描述】:
我正在计算列表中“分数”(字典值)的中位数。
my_dict = {"John": [{"class": "math", "score": 100, "year": 2014}, {"class": "english", "score": 85, "year": 2015}, {"class": "science", "score": 90, "year": 2015}],
"Timmy": [{"class": "math", "score": 87, "year": 2014}, {"class": "english", "score": 91, "year": 2015}],
"Sally":[{"class": "math", "score": 95, "year": 2014}]}
输出如下所示:
new_dict = {"John": 90, "Timmy": 89, "Sally": 95}
我想我需要根据分数对 my_dict 进行排序,然后计算中值。如果不使用外部包装,则无法完全弄清楚这两个步骤。
任何帮助将不胜感激! Python 新手。
【问题讨论】:
-
您不必对“my_dict”进行排序,但对于“my_dict”中的每个值(列表),您必须在新列表中提取“分数”(通过迭代列表项),对其进行排序并检索“my_dict”中一个键的中位数。先尝试自己做,然后在问题中将代码显示为格式正确的文本。
标签: python list dictionary list-comprehension dictionary-comprehension