Python でリストを逆順に並び替る方法

  1. Python でリストを逆順に並び替る reverse() メソッド
  2. Python でリストを逆順に並び替る reversed() 関数
  3. Python でリストを逆順に並び替るスライシングメソッド

Python のリストは、文字列、文字、ブール値、整数など、さまざまなオブジェクトの集合体です。この記事では、reverse() メソッド、reversed() メソッド、リストスライスメソッドなど、Python でリストをを逆順に並び替る方法を紹介します。

Python でリストを逆順に並び替る reverse() メソッド

以下のリストを例にしてみましょう。

list=["cat","dog","bird","insects"]
list.reverse()
print(list)

reverse() メソッドは新しいリストを作成するのではなく、元のリストの項目を反転させる。

reverse() メソッドの出力は以下のようになります。

['insects', 'bird', 'dog', 'cat']

同様に、整数リストを反転させることができます。

int_list=[5,15,30,50,70]
int_list.reverse()
print(int_list)

出力:

[70, 50, 30, 15, 5]

Python でリストを逆順に並び替る reversed() 関数

Python の組み込み関数 reversed() は、与えられたシーケンスを逆順に並び替るイテレータを返します。返されたイテレータの各要素にアクセスするために for ループを利用することができます。

species_list=["cat","dog","bird","insects"]
for i in reversed(species_list):
    print(i)

出力:

insects
bird
dog
cat

逆転させたイテレータを list() の中に入れて、結果をリストとして取得することができます。

species_list=["cat","dog","bird","insects"]
list(reversed(species_list))

出力:

['insects', 'bird', 'dog', 'cat']

Python でリストを逆順に並び替るスライシングメソッド

また、Python でリストを逆順に並び替るためにスライス法を使用することもできます。

例のコードは以下の通りです。

species_list=["cat","dog","bird","insects"]
print(species_list[::-1])

出力:

['insects', 'bird', 'dog', 'cat']

このメソッドはリストのコピーを生成し、reverse()reversed() メソッドよりも多くのメモリを占有するという欠点があります。

計算効率の点では、reverse() メソッドは reversed() メソッドやスライシングメソッドよりも高速です。

関連記事 - Python List

  • Python でリストをチャンクに分割する
  • Python でリストをアルファベット順に並べ替える