s = "D a B c d c C A E c e B b".split(); d = {} for c in s: u = c.upper() if u in d: d[u] += ' ' + c else: d[u] = c ks = sorted(d.keys()) print(' '.join(map(lambda x: '(%s)' % d[x], ks)))
実行結果 ~ $ py 18_221_NCS_sort_grp.py (a A) (B B b) (c c C c) (D d) (E e)