参考: 日経ソフトウエア 2021年11月号 [雑誌], p.129
# 数値リストの中から偶数だけの合計を計算する # 最初に思いついた処理: import numpy as np def total_of_even(numbers): numbers = np.array(numbers) numbers = numbers[numbers%2==0] # 偶数だけのリストに変えて、 return np.sum(numbers) # 総和して返す。 # テキストの模範例(を2行に分けた): def sum_of_even(numbers): numbers = filter(lambda x: x%2 == 0, numbers) # 偶数だけのリストに変えて、 return sum(numbers) # 総和して返す。 numbers = [1,2,3,4,5,6,7,8,9,0] print(total_of_even(numbers)) print(sum_of_even(numbers)) # filter()函数の構文: # filter(函数, リスト) # 函数をリストの各要素に適用し、trueが返ってくる要素をfilterオブジェクトとして返す。 def larger_than_5(val): return val > 5 print(list(filter(larger_than_5, numbers)))