我正在尝试制作一个可以对文本文件中的所有数字进行求和的程序。
这是一个链接,显示文本文件的前5行。
如何汇总FXM栏中的所有数字?
我真的很感谢你的帮助!
答案 0 :(得分:1)
看来你有一个制表符分隔的文本文件。这是一个简单的解决方案函数,其中包含一个使用示例。
import csv
def colsum(filename, delimiter, colname):
reader = csv.reader(open(filename), delimiter='\t')
headers = next(reader)
entries = [ x for x in reader ]
index = headers.index(colname)
result = sum( [ float(entry[index]) for entry in entries ] )
return(result)
def main():
print(colsum('test_data.txt', '\t', 'DD06'))
if __name__ == '__main__': main()
答案 1 :(得分:0)
也许您最好的选择是使用CSV excel文件存储此类数据。然后,您需要打开文件并像这样读取文件...
import csv
file = open(path, newline='')
read = csv.reader(file)
header = next(reader)
data = []
for row in reader: #This includes all your rows
#Here you specify the data types of all of your rows
您需要进行一些调整才能使其适用于列。
然后,根据所需列的索引,您可以编写一个循环来遍历列表的所有元素。
ex.
sum=0
for element in column[6]:
sum+=element #Assuming that you already specified in the previous loop
#that these elements were floats