通过保持第一个元素处于打开状态,从python列表中删除以下重复的元素

2024-06-07 18:04:12 发布

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

我对我的代码有一个问题,因为我想知道如何通过每次保留第一个元素来删除代码中的重复元素

举个例子比很多词都好:

mylist = [a,a,a,b,c,c,a,d,e,e,e]

我想得到:

my_new_list = [a,b,c,a,d,e]
my_new_list_2 = [a,3,b,1,c,2,a,1,d,1,e,3]

过程如下:

一旦我有了一封信或是下一封信,我就把这封信写一次,然后下一封信也一样。。 然后我需要删除连续的重复项,并将重复项的数量添加到一个新列表中

我的代码是:

mylist = [a,a,a,b,c,c,a,d,e,e,e]
result = list(dict.fromkeys(mylist))
==> [a,b,c,d,e]

这不是预期的结果


Tags: 代码元素列表new数量过程myresult
1条回答
网友
1楼 · 发布于 2024-06-07 18:04:12

可以使用^{}对相等的连续元素进行分组,并保留每个组中的key

from itertools import groupby
mylist = ['a','a','a','b','c','c','a','d','e','e','e']

[k for k,_ in groupby(mylist)]
# ['a', 'b', 'c', 'a', 'd', 'e']

相关问题 更多 >

    热门问题