我想使用列表理解來編寫相同的代碼mul_val = 1for i in list_a: mul_val = mul_val * iprint(mul_val)mul_val = 1[mul_val = i*mul_val for i in list_a]
3 回答

繁華開滿天機
TA貢獻1816條經驗 獲得超4個贊
如果我理解得很好,您可以結合使用列表理解和numpy.prod
.?示例如下:
>>> import numpy as np
>>> list_a = [1, 2, 3, 4, 5]
>>> [np.prod(list_a[:i]) for i in range(1, len(list_a) + 1)]
[1, 2, 6, 24, 120]

胡說叔叔
TA貢獻1804條經驗 獲得超8個贊
我想你要找的是reduce. reduce是一個非常有用的函數,用于對列表執行一些計算并返回結果。
from functools import reduce
list_a = [1, 2, 3, 4, 5]
print(reduce(lambda x, y: x * y, list_a))
輸出: 120
添加回答
舉報
0/150
提交
取消