我无法理解 itertools.dropwhile() 的以下行为。比方说,我有一个清单:
numbers = [1,2,3,4,5]
我这样重写:
numbers = list(itertools.dropwhile(lambda x: sum(numbers[0:x]) <=7, numbers))
值 [1,2,3] 的总和小于 7,因此我预计它们将被删除。事实上,输出是:
>>>numbers [4, 5]
我重复:
numbers = list(itertools.dropwhile(lambda x: sum(numbers[0:x]) <=7, numbers))
我预计输出应该是[5]
现在。但相反,我再次看到:
>>>numbers [4, 5]
为什么会发生这种情况?
芜湖不芜
相关分类