pythonのsortについて

Xをリストとすると、

X.sort()

でソートできる。

Xを2次元配列のリストとする。

上と同様にソートすると、第1成分がソートされたあと、第2成分がソートされる。

ところで、第2成分についてソートしたくなることがある。
そうするには、

X.sort(key = lambda x:x[1])

とすればよい。

しかし、この場合は第2成分だけをソートしており、第1成分は並べられていないどころがぐちゃぐちゃになっている。

というのも、この場合は第2成分のみに注目して、(おそらく)クイックソートを行っているためである。

クイックソートは不安定なのでぐちゃぐちゃになる。