【问题标题】:How can I sum integers line by line until a new line and then start again?如何逐行对整数求和,直到换行然后重新开始?
【发布时间】:2016-08-10 10:03:16
【问题描述】:

我有一个这样的文件:

1
2
3

5
0

5
2
3

我想要做的是将整数相加,直到换行,然后再次开始求和,所以结果是:

6

5

10

到目前为止我所拥有的是:

import sys

def readText(filename):
    sum = 0

    data = open(filename,'r')

    for line in data.readlines():
        if (line[0] != '\n'):
            sum+=int(line)
        else:
            sum = 0
            continue

    print sum

if len(sys.argv) == 2:
    lines = readText(sys.argv[1])
else:
    print("script.py inputfile")

但我只得到最后一个“组”整数的总和,在这个例子中是 10。我将不胜感激!

【问题讨论】:

    标签: python integer sum


    【解决方案1】:

    print (sum) 移到 sum = 0 之前,你会没事的

    请注意,循环中的 sum = 0 行让您从一开始就求和(并且您“忘记”所有以前的数字...)

    print sum 用于 python 2,我使用 3,因此 print 方法中的 print (sum)

    【讨论】:

    • 这正是我想要的。谢谢!
    猜你喜欢
    • 2019-05-08
    • 1970-01-01
    • 2019-10-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多