gpt4 book ai didi

python - accumulate 中的两个操作

转载 作者:太空宇宙 更新时间:2023-11-04 07:59:09 26 4
gpt4 key购买 nike

我试图将以下循环转换为 accumulate() 调用,但我失败了:

total = 0
for h in heat_values:
total += h
total -= total*0.25

如何累加包含这个 0.25 衰减因子的 h 值?

背景:我想做这个只是为了好玩,用函数式编程风格模拟同时加热和冷却的过程(加法运算是加热步骤,减法是冷却步骤)。我想获取累积值来绘制过程值。

最佳答案

除非我的数学或推理不正确,否则这就是使用 accumulate 实现此目的的方法:

heatvalues = [20, 30, 40, 50]

list(accumulate(heatvalues, lambda x, y: (x+y)*.75))

>>>[20, 37.5, 58.125, 81.09375]

编辑:如果你只想要最后一个元素,也就是总数,那么它就变成了:

list(accumulate(heatvalues, lambda x, y: (x+y)*.75))[-1]

>>>81.09375

关于python - accumulate 中的两个操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43479892/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com