多次元リストのソートってよく使う機能だと思うんですが、pythonのソートってよく考えて作ってあるなぁと関心しました。 例えば、次のような「生徒の成績リスト」があったとします。 # 配列の並び順 [名前],[国語],[算数] a = [ ['Tim', 55, 46 ], ['Jack', 55, 70 ], ['Mathhew', 23, 80 ], ] そこで、リスト2番目の値である「国語」を、点数が高い順にソートするしたい場合は、以下の用になります。 >>> sorted(a, key=lambda x:x[1], reverse=True) [['Tim', 55, 46], ['Jack', 55, 70], ['Mathhew', 23, 80]] ちなみにcmpパラメータではなくkeyパラメータを上書きしたのは高速化のためです、念のため・・・ 結果を見ると「Tim」と「Jac