前提・実現したいこと
9個の要素を持つリストに対して、最初の3個、真ん中の3個、最後の3個の和をとる函数を作成したい。
作った函数
引数aは9個の要素を持つリスト
def sum_every_3_9(a): atama = sum(a[0:3]) naka = sum(a[3:6]) sippo = sum(a[6:-1]) return atama, naka, sippo
試したこと
上の函数を
b = [1,2,3,4,5,6,7,8,9] sum_every_3_9(b)
のように呼び出したところ、出力が
(6, 15, 15)
となった。
補足
なお、函数4行目を
sippo = sum(a[6:9])
とした場合は、きちんと出力された。
確認したいこと
なぜ、
sippo = sum(a[6:-1])
では、うまくいかないのかを教えていただきたいです。
b[6:9]とb[6:-1]で取得できる要素が違います。確認してみてください。
回答1件
あなたの回答
tips
プレビュー