每天一習題,提升Python不是問題!!有更簡潔的寫法請評論告知我!
https://www.cnblogs.com/poloyy/category/1676599.html
題目
請寫一個函數,該函數 參數為數字列表,請算出另外一個列表,里面每個元素依次是參數列表里面元素的累計和。 比如 參數為[1, 2, 3, 4] 結果計算方法為[1, 1 + 2, 1 + 2 + 3, 1 + 2 + 3 + 4] 返回結果就應該是[1, 3, 6, 10]
解題思路
- 外循環獲取列表每個元素
- 內循環獲取當前元素and 之前的所有元素,最后相加
- 為了不影響原列表的值,需要新創建一個列表來存放相加后的值
答案
def count_test(lists): res = [] lens = len(lists) for i in range(0, lens): res.append(lists[i]) for j in range(0, i): res[i] += lists[j] print(res) lists = [1, 2, 3, 4] count_test(lists)