考虑以下列表:
alist = [[1, 'AAA0'], [2, 'AAAA1'], [3, 'BB2BB2'], [4, 'A3A3'], [5, 'A3A3']]
那么如果我想根据第二个插槽对列表进行排序,但同时只获取我使用的内部有“A”的项目:
from operator import itemgetter
print str([pt for pt in sorted(alist, key=itemgetter(1)) if 'A' in pt[1]])
我的问题是如何按字母顺序对它们进行排序后,如何先按字符串长度对它们进行分组,然后再对相同的进行分组。就像只能检索 2 'A3A3'。
这
if 'A' in pt[1]
正在返回所有包含“A”的项目,而不是包含 1 个“A”的项目。
那么我如何将那些有 1 个“A”、那些有 2 个“A”等的人分组?