在python中对数组的相同元素进行分组

时间:2017-09-23 15:07:03

标签: python arrays while-loop

假设我有一个数组a = [' a',' b'' c',' a',' ; b'' C&#39]。我想得到结果 a a b b c c 。我试过这段代码,但是我得到了 a b b C 一个 b b c 。我不允许使用已排序(aa)。我正在寻找我的代码的帮助,而不是替代方案。

aa=['a','b','c','a','b','c','a']
i=0
while len(aa) > i:
    x=i
    j=1
    p=len(aa)-1
    while j <p:
        if (aa[x]==aa[j]):
        print (aa[x])
    j=j+1
i=i+1  

2 个答案:

答案 0 :(得分:2)

好像你在想事情。简单地排序aa应该得到您想要的结果:

>>> aa=['a','b','c','a','b','c']
>>> sorted(aa)
['a', 'a', 'b', 'b', 'c', 'c']

答案 1 :(得分:0)

如果您希望它除以空格,请尝试:

aa=['a','b','c','a','b','c']
aa.sort()
print(' '.join(aa))

如果订单无关紧要,你可以试试这个:

aa=['a','b','c','a','b','c']
''.join([aa.count(elem)*elem for elem in set(aa)])