[英]Lost: Defining a function which takes a tuple of numbers and returns the sum of only the even numbers in the tuple
標題幾乎說明了一切。 這是我一直在修改的代碼。
def sum_evens(tup):
for num in tup:
if num % 2 ==0:
total = num+num
print(total)
我在這里很迷茫,對我能做什么有什么想法? 先感謝您!
您需要從0開始總計,並在找到匹配數字時將其添加
def sum_evens(tup):
total = 0
for num in tup:
if num % 2 ==0:
total = total+num
return total
最終,您需要將總數返回到所謂的總數,以便可以使用它
有很多更好的方法可以做到這一點...但是我只是編輯了您的函數以使其工作
print sum_evens([1,2,3,4,5,6,7]) # 2+4+6 = 12
您需要了解列表推導。 基本上,它們是循環的后退,這樣您就可以通過遍歷舊列表來定義新列表。 您還可以添加條件子句進行選擇。
在這種情況下,我們遍歷現有的元組,並尋找除以二的余數為零的單個成員。 然后,我們用這些成員構造一個列表,然后求和。
print sum([x for x in my_tuple if x % 2 == 0])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.