【发布时间】:2021-10-02 16:27:31
【问题描述】:
list = [1,1,4,4,4,0,1]
new_list = []
sum_ = 0
for number in list:
if number == number+1:
sum_ += number
else:
sum_ += number
new_list.append(sum_)
print(new_list)
输出 => [1, 2, 6, 10, 14, 14, 15]
预期 => [2, 12, 0, 1]
【问题讨论】:
-
也许
itertools.groupby是您要找的?请在问题中添加更多详细信息。在问题中向我们解释您正在尝试做什么,为什么没有这样做,以及您希望最终结果是什么样的。 -
首先,
if number == number+1永远不会是True,其次,在else分支中,您总是更新sum_,而不是将其重置为零。 -
@HampusLarsson 关于我所期望的最终结果,我希望它是 [2, 12, 0, 1]
-
@HamzaTanya 请在问题块内提出问题,而不仅仅是发布代码块。用你的话解释你正在努力处理的代码的哪一部分,解释为什么你认为你的逻辑应该是
True你想要的,以便我们知道我们需要帮助向你解释的部分。请阅读帮助页面How to Ask。
标签: python list for-loop arraylist