python 多次元配列の各要素の特定の列の値を基準にsortする

多次元配列の各要素のある列の値を参照し,sortを行う場合の方法をまとる.

from operator import itemgetter

list1 = [[1,5,3], [6,4,8], [9,11,2]]
print('ソート前:{}'.format(list1))

list1.sort(key=itemgetter(0))
print('ソート後(0番目の要素):{}'.format(list1))

list1.sort(key=itemgetter(1))
print('ソート後(1番目の要素):{}'.format(list1))

list1.sort(key=itemgetter(2))
print('ソート後(2番目の要素):{}'.format(list1))

#OUTPUTS
ソート前:[[1, 5, 3], [6, 4, 8], [9, 11, 2]]
ソート後(0番目の要素):[[1, 5, 3], [6, 4, 8], [9, 11, 2]]
ソート後(1番目の要素):[[6, 4, 8], [1, 5, 3], [9, 11, 2]]
ソート後(2番目の要素):[[9, 11, 2], [1, 5, 3], [6, 4, 8]]

参照

programming-study.com