2024-10-04 07:39:08 发布
网友
我有一个清单
['AAB', 'CAA', 'ADA', 'CADA', 'AACA']
我正试着
['AB', 'CA', 'AD', 'CAD', 'AC']
出局的顺序很重要
似乎输出中字符的顺序对您很重要。可以这样使用OrderedDict:
OrderedDict
from collections import OrderedDict a = ['AAB', 'CAA', 'ADA', 'CADA', 'AACA'] print(["".join(OrderedDict.fromkeys(i)) for i in a]) # ['AB', 'CA', 'AD', 'CAD', 'AC']
没有OrderedDict和使用set也保持输出顺序
set
x = ['AAB', 'CAA', 'ADA', 'CADA', 'AACA'] ["".join([z.add(c) or c for c in w if c not in z]) for w, z in [(w, set()) for w in x]]
输出:
列表理解实际上为每个单词填充了一个集合,因此复杂性不会增加
似乎输出中字符的顺序对您很重要。可以这样使用
OrderedDict
:没有
OrderedDict
和使用set
也保持输出顺序输出:
列表理解实际上为每个单词填充了一个集合,因此复杂性不会增加
相关问题 更多 >
编程相关推荐