我的代碼的第一步是指定要輸入的行數。然後我輸入以下形式的行:如何在Python中引用元素?
John 430.09 300.90 2070.00
如果我有例如3個輸入,我怎樣才能引用每個輸入行中的最後一個值?我必須總結這些價值。
我的代碼的第一步是指定要輸入的行數。然後我輸入以下形式的行:如何在Python中引用元素?
John 430.09 300.90 2070.00
如果我有例如3個輸入,我怎樣才能引用每個輸入行中的最後一個值?我必須總結這些價值。
你可以嘗試這樣的:
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)
使用一些簡單的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,因此你可以把它們加起來:
>>> 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
的感謝! :)所以,我介紹了三個單獨的行在同一個窗體中,現在我怎樣才能將它們合併到一個對象中?在結束你的帖子對象「數據=‘’‘約翰430.09 300.90 2070.00 ...奔530.10 200.50 3020.50’‘’ – 2015-04-06 08:48:12
我爲什麼能得到這個:數據=‘’'約翰430.09 300.90 2070.00 ...奔530.10 200.50 3020.50「」「爲什麼有三種 - >>」?。? – 2015-04-06 10:01:37
我已經使用了三個引號,因爲這讓我有在多行字符串分割哪裏您的數據來自您可以替換'data.splitlines( )''在我的代碼中,您可以一次遍歷每一行。 – Ben 2015-04-06 10:13:52