C= ['a', 'a', 'a', 'a', 'a', 'b', 'b', 'b', 'c', 'c', 'c', 'c', 'c', 'c', 'c']
如何将其变成这样的新变量。
Cnew=['a','b','c']
是否有功能或我可以做的任何事情?
答案 0 :(得分:4)
我将列表转换为一组:
C= ['a', 'a', 'a', 'a', 'a', 'b', 'b', 'b', 'c', 'c', 'c', 'c', 'c', 'c', 'c']
Cnew = set(C)
Set的工作与列表非常相似,但它们只允许每个元素中的一个,这就是你想要的。但是,如果您真的想要一个列表,只需通过list
函数将该集转换回列表。
C= ['a', 'a', 'a', 'a', 'a', 'b', 'b', 'b', 'c', 'c', 'c', 'c', 'c', 'c', 'c']
cNew = []
for value in C:
if value not in cNew:
cNew.append(value)
print(cNew)
答案 1 :(得分:1)
如果您想保留订单并删除重复项,请使用collections.OrderedDict
的一种方法:
from collections import OrderedDict
C= ['a', 'a', 'a', 'a', 'a', 'b', 'b', 'b', 'c', 'c', 'c', 'c', 'c', 'c', 'c']
new_C = list(OrderedDict.fromkeys(C).keys())
虽然看起来这也足以满足您的使用案例:
new_C = sorted(set(c))
值得注意的是,如果您还不知道,list
对象(来自您所需输出的数据结构)中的查找(检查成员资格)是时间复杂度{{1 } {} O(n)
对象的查找是set
。这一切都取决于你尝试用输出做什么,当然......
答案 2 :(得分:1)
您可以使用...slideUp(300, this.showPanel.bind(this));
,所以:
set()