我有一个列表,格式如下:
mylist = ["Joe, 100%", "Joe, 80%", "Joe, 90%", "Sally, 95%", "Sally, 80%", "Jimmy, 90%", ...]
我要做的是,首先计算每个名字出现的次数。如果一个名称出现两次或两次以上,请将该名称与平均百分比一起追加。所以,我试图得到以下输出:
newlist = ["Joe, 90%", "Sally, 87.5%"]
为此,我只mylist.split(", ")
获取名称,并使用Counter()
查找名称出现的次数。然后,我使用一个简单的if >= 2
语句将名称附加到newlist
,如果名称出现2次或更多次。你知道吗
然而,尽管我尝试了很多不同的方法,但我还是不知道如何在最后的列表中把百分比和名字一起拿回来。我也不知道如何在谷歌上表达我的问题,所以我找不到任何帮助。有人知道怎么做吗?如果这个问题是重复的,请让我知道(并提供一个链接,我可以学习),我可以删除这个问题。谢谢!你知道吗
你可以试试这个:
输出
['Joe, 90.0%', 'Sally, 87.5%']
我建议您创建一个分数字典,其中键是名称,值是他们的分数列表。此代码段显示了如何实现这一点:
这会给你留下一本按名字排列的分数字典。现在你要做的就是平均字典里的分数:
相关问题 更多 >
编程相关推荐