【发布时间】:2015-10-07 03:29:14
【问题描述】:
['1', 'james', '1', '90\n']
['1', 'james', '2', '78\n']
['1', 'james', '3', '87\n']
['1', 'james', '4', '98\n']
['2', 'alice', '1', '95\n']
['2', 'alice', '2', '91\n']
['2', 'alice', '3', '100\n']
['2', 'alice', '4', '98\n']
基本上,这就是我所拥有的。从文本文件中读取的一堆列表。 我正在尝试找出一个将类似内容输出到此控制台的函数。
1, james: 88.65 (this number is weigh-adjusted mark for all assignments)
*Weight for each assignment 0.2, 0.25, 0.25, 0.3
2, alice: 96.15
参数分别为学号、姓名、作业#和分数。 每个人在每个作业的文本文件中至少有四行# 因为我是 Python 新手,所以我这样做是为了自学。 非常感谢在这种情况下的任何帮助。我似乎无法从在线教程中找到任何提示
【问题讨论】:
-
所以这些列表是对象还是字符串?
-
致 OP:到目前为止,您尝试过什么?对于这里的很多人来说,这个问题很容易回答,但请不要回答。让 OP 表现出一些努力。
-
我对文本文件进行了操作,使其显示为字符串列表
-
既然你是自学的,那么把你试过的代码贴出来怎么样。你会从中学到更多,而不是把答案放在盘子里。
-
您需要按学生对分数进行分组,然后计算加权分数的总和。您可以使用
collection.defaultdict(float)或collection.groupby()轻松完成此操作,尽管前者可能更易于使用并且不需要排序数据。
标签: python