我有一個程序,我試圖使用sum
將列表中的所有數字一起添加,但我不認爲格式可以幫助任何人嗎?添加列表sum()
list1 = ['01', '05', '07', '08', '10']
str1 = ','.join(list1)
print(str1)
total =(sum(str1))
print (total)
我有一個程序,我試圖使用sum
將列表中的所有數字一起添加,但我不認爲格式可以幫助任何人嗎?添加列表sum()
list1 = ['01', '05', '07', '08', '10']
str1 = ','.join(list1)
print(str1)
total =(sum(str1))
print (total)
只是做:
sum([int(ele) for ele in list1])
你的列表是一個list of strings
,所以在這裏我們每個元素轉換爲int
,比服用它sum
。
In : list1 = ['01', '05', '07', '08', '10']
Out : 31
是這樣的:
sum([int(i) for i in list1])
其中:
[int(i) for i in list1]
列表轉換爲int
,並sum()
增加了這些整數。
另一種方法是使用map()
:
sum(map(int, list1))
這也轉化成的List1和int
總結的內容。
最後,你可以使用匿名函數lambda
,增加了轉化爲int
元素reduce()
列表:
reduce(lambda x, y: int(x) + int(y), list1)
剛寫的Python的一行代碼總結列表。
print(sum(int(i) for i in list1)) #python 3.x
感謝這工作!歡呼聲 –
您試圖總結一個字符串,而不是一個整數的列表。您需要將您的列表轉換爲數字列表,然後您可以總結:
list1 = ['01', '05', '07', '08', '10']
str1 = ','.join(list1)
print(str1)
number_list=[int(i) for i in list1]
total =sum(number_list)
print(total)
您是否需要添加所有列表元素,或者是否需要將所有列表元素組合在一起? – JKC
你可以簡單地將每個元素轉換爲整數,並做 – nanithehaddock