reverse / reversed

Pythonのリストの順番を逆にしたい時には、reverse または reversed を使います。
両者の大きな違いは元のリストを保存するかどうかです。reverse は元のリスト自体を変更する破壊的な処理をするが、reversed は元のリストは保存する、ということだけ覚えておきましょう。sort / sorted の時と同じですね。


以下のサンプルスクリプトでその違いを確認してください。

(3-4行目) reverseしたのでリストAそのものが逆順になっているのが分かります。
(6-7行目) もう一度reverseさせれば元に戻ります。当然です。
(9-10行目) reversedをかけてもリストA自体は変更されていないのが分かります。余談ですが、reversed(A) とだけすると listreversediterator というよく分からないオブジェクトになってこのままでは扱えないので、外から list をかけて無理やりリスト型に戻しています。


Pythonの記事一覧へは こちら から。