首页 > 解决方案 > 使用 Python 处理文件 - 打印每日价值总和

问题描述

我需要编写一个函数 print_daily_totals(filename),它将这样的文件的名称作为参数并从文件中读取数据,以下面给出的格式打印每天的读数总数。

应以与输入文件中相同的顺序打印出天数。

对于输入文件中的每一行,我应该以 date = total 格式打印一个输出行,总数保留 2 个小数位。例如,对于上面简单的 2 行输入文件,输出将是:

2010-01-01 = 30.00
2010-01-02 = 115.30

该文件包含:

2006-04-10,836.2,563.263
2006-04-11,462.06,1694.3,666.0
2006-04-12,1318.19,1485.62

调用语句将是

 print_daily_totals('data.txt')

预期的输出必须是:

 2006-04-10 = 1399.46
 2006-04-11 = 2822.36
 2006-04-12 = 2803.81

我仍然开始用 Python 处理文件。因此,任何帮助将不胜感激。

标签: pythonpython-3.xfile-handling

解决方案


您可以使用此功能:

def print_daily_totals(ff):
    with open(ff) as f:
        for line in f.readlines():
            line_arr = line.split(',')
            result = sum([float(amnt.strip()) for amnt in line_arr[1:]])
            print(line_arr[0]+" = "+ str(result))

推荐阅读