Python リストを逆にする (reverse, reversed) | プログラミング学習 初心者向け入門ガイド

ホーム › >>

Python リストを逆にする (reverse, reversed)

記事掲載:https://laptrinhcanban.com/ja

Pythonでリストを逆にする方法をすべてチュートリアルします。このレッスンの後、 reverse() メソッドおよびスライス python リストを使用して、python でリストを逆にする方法をすべて学習します。

次のように、Pythonでリストを逆にする3つの方法があります。

  • reverse() メソッド: Python で元のリストを逆にする
  • リストスライス: リストを逆にして、新しいリストを作成します
  • Pythonの逆関数 : リストを逆にしてイテレータを作成する

これらの方法については、以下で説明します。

Pythonでリストを逆にする | reverse() メソッド

Python の reverse() メソッドは、元のリストの要素の順序を逆にします。これは破壊的な処理であり、要素を逆順にして元のリストを再構築します。

次の構文で Python の reverse() メソッドを使用します。

orinary_list . reverse ()

orinary_list は元のリストで、元に戻す必要があります。

たとえば、reverse() メソッドを使用して、Python で一連の数字を次のように逆にします。

orinary_list = [1, 2, 3, 4, 5]

orinary_list.reverse()
print(orinary_list)
#>> [5, 4, 3, 2, 1]

同様に、Python でリストを逆にするために reverse() を使用します。要素は次のように文字列です。

mylist = ['Ali' , 'Bob' , 'Eva' , 'Adam']
mylist.reverse()
print(mylist)
#>> ['Adam', 'Eva', 'Bob', 'Ali']

reverse() メソッドを実行した後、元のリストは変更されますが、reverse() メソッド自体は次のように None を返します。

print(org_list.reverse())
# None

return() メソッドの戻り値が None であることを知らない場合、プログラムで論理的な間違いを犯す可能性が非常に高くなります。たとえば、 pythonで反転したリストを出力する場合、reverse() で反転したリストを出力する代わりに、reverse() メソッドの結果を次のように出力します。

l = ['a' , 'b', 'c']

# Cách in sai:
print(l.reverse())
#>> None.

# Cách in đúng:
l.reverse()
print(l)
#>> ['a', 'b', 'c']

Pythonでリストを逆にして新しいリストを作成する

Pythonでは、リストのスライス関数を使用してリストを逆にすることもできます。pythonでリストをスライスする際に引数のstep = -1を指定すると、スライスされるリストは元のリストとは逆順になります。このプロパティを利用して、次の例のようにPythonでリストを逆にすることができます。

orinary_list = [1, 2, 3, 4, 5]
new_list = orinary_list[::-1]

print(org_list)
print(new_list)
# [1, 2, 3, 4, 5]
# [5, 4, 3, 2, 1]

上記の reverse() メソッドとは異なり、リストをスライスすると、元のリストと反対の要素を持つ新しいリストが作成され、元のリスト自体は変更されないことに注意してください。

Python でリストを逆にしてイテレータを作成する | Pythonのreversed関数

Pythonのreversed 関数は、指定されたリスト内の要素を取り、元のリストとは逆の要素の順序でイテレータを作成する組み込みの Python関数です。

Python で list() 関数を使用して組み合わせると、イテレータ (reversed() 関数の結果) を新しいリストに変換できます。要素の順序は元のリストから逆になります。

次の構文で Python の reversed() 関数を使用します。

list_iterator = reversed ( orginary_list )

ここで、orginary_list は反転される初期リストであり、list_iterator は生成される反復子です。

具体例:

orginary_list = ['a' , 'b', 'c' , 'd' , 'e']
print(orginary_list)
#>> ['a' , 'b', 'c' , 'd' , 'e']

list_iterator = reversed(orginary_list)
print(list_iterator)
#>> <list_reverseiterator object at 0x14d5e9b41340>

reversed() は、リストではなくイテレータを返すことに注意してください。したがって、イテレータを出力すると、結果は上記のようになります。イテレータ内の要素を取得して出力するには、次のように for ループを使用する必要があります。

for i in list_iterator:
print(i)
#>> e
#>> d
#>> c
#>> b
#>> a

python の list() 関数と組み合わせると、次のように、上記のイテレータを元のリストと逆の要素順序を持つ新しいリストに変換できます。

new_list = list(list_iterator)
print(new_list)
#>>['e', 'd', 'c', 'b', 'a']

一般に、次のように記述された reversed() 関数を使用して、Python でリストを反転します。

orginary_list = ['a' , 'b', 'c' , 'd' , 'e']
new_list = list(reversed(orginary_list))

print(orginary_list)
print(new_list)
#>> ['a', 'b', 'c', 'd', 'e']
#>> ['e', 'd', 'c', 'b', 'a']

まとめ

上記 Kiyoshi はpython でリストを反転する方法を示しました。レッスンの内容をよりよく理解するために、今日の例を書き直す練習をしてください。

そして、次のレッスンで Python の知識についてさらに学びましょう。

URL Link

https://laptrinhcanban.com/ja/python/nhap-mon-lap-trinh-python/list-trong-python/dao-nguoc-list-python/

この記事は役立つと思ったらいいね!とシェアをお願いします
">

ホーム  › >>

Profile
きよしです!笑

Author: Kiyoshi (Chis Thanh)

Kiyoshi was a former international student in Japan. After graduating from Toyama University in 2017, Kiyoshi is currently working as a BrSE in Tokyo, Japan.