问题描述
某文本文件test.txt中包含有若干十进制正整数(同一行中连续数字字符可构成十进制正整数,不考虑负数、小数、十六进制数或科学计数法)和其它一些英文信息。设计程序,提取文件中所有十进制正整数,并以每行5数形式输出,最后输出所有十进制正整数之和。
程序代码
if __name__ == '__main__':
sum = 0;
tokns = [] #切割字符串,去除字符串中的每个单词
with open("input.txt","r") as f:
for line in f.readlines():
tokns += line.strip('
').strip(',').split(" ") #去除换行符和逗号,并以空格为分隔依据
numlist = []
for i in tokns:
try:
k = int(i)
numlist.append(k)
except ValueError:
pass
print(*numlist)
for i in numlist:
sum += i #求和
print(sum)