Python-如何对文件中的值求和

标签 python list file

所以我有一个文件。其中有 3 行,每行告诉 Name;sport:points

Kevin;Football:604,196,47;Golf:349,0,0;Tennis:797,426,124
Julia;Football:350,254,1;Golf:242,58,38
Bob;Football:260,18,0

我有代码,但我不知道如何计算每项运动的分数

f=open("points.txt", "r")
s=f.readlines()
p=str(s)

for line in s:
    printnum=0
    printnum+=float(line)



    for line in s:
        if p.isdigit():
            total=0
            for number in s:
                total+=int(number)
                print(total)

所以结果应该是这样的

Alvin:
- Football: 278
Kevin:
- Football: 847
- Golf: 349
- Tennis: 1347
Sam:
- Football: 605
- Golf: 338

所以基本上我不知道热求和键值

最佳答案

from ast import literal_eval as leval

my_dict = {}
for line in s:
    name, *sports = line.split(';')
    my_dict[name] = {sport.split(':')[0]: sum(leval(sport.split(':')[1])) for sport in sports}

for player in my_dict:
    print('{}:'.format(player))
    for sport in my_dict[player]:
        print(' - {}: {}'.format(sport, my_dict[player][sport]))

# Produces:
# Kevin:
#  - Golf: 349
#  - Tennis: 1347
#  - Football: 847
# Julia:
#  - Golf: 338
#  - Football: 605
# Bob:
#  - Football: 278

关于Python-如何对文件中的值求和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42811478/

相关文章:

python - 使用 context.use_certificate_chain_file 时为 "key values mismatch"

java - 将列表元素转换为字符串

python - 根据值列表对字典列表进行排序

java - 为什么有人会在 java 中使用 Collections.emptyList?

java - 在 Java 中处理文件路径的最佳方式是什么?

python - 重新加载 django 模型以处理单元测试中的 @override_settings

python - 如何从包含不同长度的 numpy 数组的 numpy 数组中获取唯一元素?

python - 完整性错误位于/posts/create/18/: Key (group_id)=(18) is not present in table "auth_group"

vb.net - 如何正确计算文件夹中的文件数

python - 在 Python 中导入文件?