使用python从具有条件的列表创建列表

2024-04-18 23:42:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个名为[7,1,2,2,3,1,2,3,3]的列表。因此,我们必须创建另一个包含元素的列表,比如if元素在original中是一次,然后简单地追加,if元素是多次连续的,然后求和并添加到新列表中。上面列表的输出应该是[7,1,4,3,1,2,6]

任何帮助都是值得赞赏的。你知道吗


Tags: 元素列表iforiginal
1条回答
网友
1楼 · 发布于 2024-04-18 23:42:27

另一种情况是for ^{},它非常适合合并相同值的运行:

from itertools import groupby

mylist = [7,1,2,2,3,1,2,3,3]

collapsedlist = [sum(grp) for _, grp in groupby(mylist)]

print(collapsedlist)

输出:

[7, 1, 4, 3, 1, 2, 6]

它是对相同数字的每次运行求和(包括单个值的“运行”,因此对于不重复的情况不需要特殊处理),将运行替换为求和。你知道吗

相关问题 更多 >