python列表按照字母排序_Python:按字母顺序对列表进行排序/分组

我觉得这已经被问到了,但是这些问题的答案对我的代码没有效果。

我试图根据第一个列表[2]按字母顺序对列表进行排序,然后在按列表[3]和列表[4]排序的匹配条目内对列表进行排序,依此类推。真实的数据更大,每个列表中的条目更多,但只是一个例子:

list = [

['X_campestris_vesicatoria', 'Bacteria', 'Proteobacteria',

'Gammaproteobacteria', 'Xanthomonadales', 'Xanthomonadaceae', 'Xanthomonas'],

['Pantoea', 'Bacteria', 'Proteobacteria', 'Gammaproteobacteria',

'Enterobacteriales', 'Enterobacteriaceae', 'Pantoea'],

['Acidobacterium', 'Bacteria', 'Acidobacteria', 'Acidobacteriales',

'Acidobacteriaceae', 'Granulicella'],

['S_boydii', 'Bacteria', 'Proteobacteria', 'Gammaproteobacteria',

'Enterobacteriales', 'Enterobacteriaceae', 'Shigella']]我已经尝试了一些类似问题的答案:

taxlist.sort(key = lambda row: (row[2],row[3],row[4],row[5]))

print taxlist但没有排序正在发生。

与我尝试时相同:

sorted(taxlist, key=lambda x: (x[2],x[3],x[4],x[5]))

print taxlist一旦列表排序,我仍然可以使用这个或不再可迭代的列表?

import csv

writer = csv.writer(sys.stdout, delimiter="\t")

writer.writerows(taxlist)谢谢你的帮助。

你可能感兴趣的:(python列表按照字母排序)