Python:维护输入列表的顺序

2024-06-17 11:47:53 发布

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

我的代码可以删除重复项,但会破坏列表的顺序

ls = eval(input("Input a list:"))
lss = list(set(ls))
print(lss)

我搜索并尝试了一些代码,但它对我不起作用


Tags: 代码列表input顺序evallslistprint
2条回答
lst = input("Input List: ")
lst2 = []
for i in lst:
    if i not in lst2:
        lst2.append(i)

打印(lst2)

为我上次失败的尝试道歉。希望这个能起作用

由于将列表转换为集合(集合是无序的唯一集合),因此不会保留顺序

试试这个:

from collections import OrderedDict
items = eval(input("Input a list:"))
print(list(OrderedDict.fromkeys(items)))

# for example:
items = [1, 2, 0, 1, 3, 2]
print(list(OrderedDict.fromkeys(items)))
# output: [1, 2, 0, 3]

相关问题 更多 >