0

如何在python中对文本文件中的数字求和?假设我们有一些具有如下数字的文本文档:

320
5203
5246

我们希望 python 打开该文件并将这些数字相加得到结果:10769。我该怎么做?

4

1 回答 1

2

如果文件不是太大,您可以将文件读入数组,使用列表推导将行转换为整数列表,然后计算总和:

sum([int(s.strip()) for s in open('foo.txt').readlines()])

但是,这会将整个文件读入内存。如果您的文件很大,那么以命令式方式累积总和可能会减少内存密集型:

result = 0
for s in open('foo.txt'): result += int(s.strip())

或者作为生成器表达式,以便列表不需要存储在内存中

sum(int(s.strip()) for s in open('foo.txt'))
于 2013-02-09T20:37:25.837 回答