Skip to main content
 首页 » 编程设计

python之使用 Python 解析逗号分隔文件并添加货币字段

2025年05月04日19cloudgamer

我正在尝试使用 Python 来解析一个逗号分隔的文件,其布局与此类似:

AccountNumber,Invoice_Number,Gross_Amt,Adjustments,TotalDue 
 
"234","56787","19.37",,"19.37" 
"234","56788","204.76","-10.00","194.76" 
"234","56789","139.77",,"139.77" 
"567","12543","44.89","30.00","74.89" 

我想要完成的是合计总金额、调整和总应付金额,然后将它们添加到每行的末尾(或仅添加到每个文档的最后一行)。

我的问题是如何创建一个变量,只要帐号相同就只添加字段?例如用英语我会说:

检查帐号:当帐号等于上一行的帐号时,在每一行添加 Gross_amt,然后当帐号更改时,将 gross_amt 字段的总和作为新字段追加到最后一行的末尾帐户为 Gross_Amt_Total。重新开始。

请您参考如下方法:

你可以使用 itertools.groupby() :

import csv 
from itertools import groupby 
from operator import itemgetter 
 
with open("data.csv", "rb") as f: 
    next(f)    # Skip header 
    for account, lines in groupby(csv.reader(f), itemgetter(0)): 
        gross_amount = 0. 
        for line in lines: 
            print line 
            gross_amount += float(line[2]) 
        print "The total gross amount for account", account, "is", gross_amount