我的代码中的第一步是指定要输入的行数。然后我以以下形式输入行:
John 430.09 300.90 2070.00
如果我有3个输入,我怎么能引用每个输入行的最后一个值?我必须总结这些价值观。
答案 0 :(得分:0)
with open("your_document") as f:
my_list = [] # this will save the last value of every line
for x in f:
my_list.append(float(x.strip().split()[-1]))
print sum(my_list)
答案 1 :(得分:0)
使用一些简单的Python构造:
split
会将字符串转换为列表,在给定的分隔符上拆分(如果您不提供空格,则为空格):
>>> data = 'John 430.09 300.90 2070.00'
>>> data.split()
['John', '430.09', '300.90', '2070.00']
为列表编制索引会为您提供单个部分,而使用否定索引将从最终开始计算:
>>> data.split()[-1]
'2070.00'
然后你可以把它转换成浮动,所以你可以添加它们:
>>> float(data.split()[-1])
2070.0
您可以循环输入,并对结果求和。把它放在一起:
>>> data = '''John 430.09 300.90 2070.00
... Ben 530.10 200.50 3020.50'''
>>> result = sum(float(x.split()[-1]) for x in data.splitlines())
>>> result
5090.5