【发布时间】:2020-08-13 14:51:45
【问题描述】:
使用reduce() 函数,我必须找出列表的最大值变化了多少次。
这是我的代码,但我不明白为什么 count 仍然为 0。
from functools import reduce
count = 0
heights = [10, 8, 11, 2, 1, 4, 13, 11]
reduce(lambda a, b: count + 1 if a < b else count + 0, heights, 0)
print(count)
【问题讨论】:
-
“列表的最大值变化多少次”——这是什么意思?
-
我认为这意味着,当您从头到尾扫描列表时,您观察到的元素大于任何先前元素的次数。
-
@KarlKnechtel 完全正确。我更正了我的问题
-
a>b 始终处于状态
-
你永远不会分配给
count。你为什么希望它改变?
标签: python python-3.x list reduce