Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonリバースリスト:ステップバイステップのチュートリアル

組み込みのPythonを使用してリストを逆にすることができます reverse() または reverse() メソッド。これらのメソッドは、新しいリストを作成せずにリストを逆にします。 Python reverse() および reverse() は、元のリストオブジェクトの要素を反転します。


リストを逆にすることは、プログラミング言語の一般的な部分です。このチュートリアルでは、最も効果的なPythonリバースリストメソッドを分析します。

Pythonに顧客名のリストがアルファベットの逆順であり、アルファベット順に表示したいとします。そのためには、リストを逆にする必要があります。長いリストがあり、一番下にあるものを確認したい場合は、下にスクロールするだけです。または、逆にしてデータをすばやく取得することもできます。

Pythonリストとリストスライス:復習

Pythonでは、リストはアイテムの配列です。リストには、文字列、ブール値、数値、オブジェクト、またはPythonの他のデータ型を含めることができ、必要な数だけ保持できます。大量のデータを処理する場合、複数の変数を宣言する代わりにリストを宣言すると便利な場合があります。

リストスライス

リストの逆操作を実行するためにリストのスライスについて知る必要はありませんが、役立つ場合があります。

Pythonでリストを宣言する方法は次のとおりです。

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]

変数studentNamesを宣言しました 、および値のリスト(この場合は学生の名前)を変数に割り当てました。

リストから特定の値を取得したい場合は、そのインデックス番号を使用してリストをスライスできます。それは取り入れるべきことがたくさんあるので、それを分解しましょう。リスト内の各アイテムには、0から始まるインデックス値があります。これらを使用して、リストから特定の値を取得できます。配列のインデックス値は次のとおりです。

参加者の81%は、ブートキャンプに参加した後、自分たちの技術的な仕事の見通しについてより自信を持っていると述べました。今日のブートキャンプにマッチしましょう。

平均的なブートキャンプの卒業生は、ブートキャンプの開始から最初の仕事を見つけるまで、キャリアの移行に6か月も費やしませんでした。

ハンナ イモゲン ルイス ピーター
1 2 3

Imogenを取得したい場合 リストから、次のコードを使用してこれを行います:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
print(studentNames[1])

変数を学生名で宣言しました。次に、インデックス値が1のリストアイテムを取得するとしました。 。この場合、値はImogenでした。 。

別のインデックス番号を追加して、範囲を取得するようにインデックス番号を変更することもできます。次に例を示します。

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
print(studentNames[1:3])

コードの出力は次のようになります。

["Imogen", "Lewis", "Peter"]

リストのスライスの基本がわかったので、Pythonでリストを反転する方法について説明します。

Pythonリバースリストチュートリアル

Pythonでリストを元に戻すことができる3つの主な方法は次のとおりです。

  • スライスを使用して逆にする
  • Reverse()を使用してリバース
  • リバースを使用してリバース

スライスを使用したリバース

1つ目は、スライスのトリックを使用してリストを逆にすることです。 Pythonの構文は次のとおりです。

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
print(studentNames[::-1])

コードの出力は次のとおりです。

["Peter", "Lewis", "Imogen", "Hannah"]

このコードでは、変数studentNamesを宣言しています。 、次にリストを反転するスライス関数を作成しました。これは、リストをスライスする一般的な方法です。ただし、メモリを消費するリストのコピーが作成されるため、非効率になる可能性があります。さらに、この関数は、リストを逆にする他の方法に比べて少し高度な場合があります。

Reverse()を使用したリバース

実行できる2番目のオプションは、組み込み関数reverse()を使用することです。 。 reverse() メソッドを呼び出して、リストオブジェクトの内容をインプレースで逆にすることができます。これは、新しいリストを作成しないことを意味します。代わりに、元のリストオブジェクトを変更します。

次のコードは、reverse()のPython構文を示しています。 動作中:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
studentNames.reverse()

print(studentNames)

コードの出力は次のとおりです。

["Peter", "Lewis", "Imogen", "Hannah"]

reverse()に注意することが重要です 関数自体はNoneの値を返します 。したがって、改訂されたリストを取得したい場合は、上記のように再度印刷する必要があります。これはリストを逆にする効率的な方法であり、この例とは異なり、多くのメモリを必要としません。構文も明確で単純です。

Reversed()を使用したリバース

リストを逆にするために使用できる3番目の最後のアプローチは、reverse()を使用することです。 関数。これは、Pythonでリストの逆順を作成するために逆イテレーターを作成することによって使用する組み込み関数です。これは、新しいリストが作成されず、古いリストが変更されないことを意味します。代わりに、関数はリスト内のすべての要素を循環し、それらを逆の順序で返します。

次の構文は、reverse()を示しています。 動作中の機能:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
for i in reversed(studentNames):
	print(i)

コードの出力は次のとおりです。

"Peter"
"Lewis"
"Imogen"
"Hannah"

リストの逆コピーを本当に作成したい場合は、次のコードを使用できます:

studentNames = ["Hannah", "Imogen", "Lewis", "Peter"]
list(reversed(studentNames))

これは次のようになります:

["Peter", "Lewis", "Imogen", "Hannah"]

これは、リストを逆にするもう1つの簡単な方法です。何が起こっているのかをはっきりと示しています。他のリストのすべての値を含む新しいリストが作成されていますが、逆になっています。

結論

これが、さまざまなリバースリストメソッドの仕組みです。このチュートリアルでは、文字列やオブジェクトなどのアイテムの配列であるリストの基本を調べ、インデックス値について説明しました。また、リストを元に戻すために使用できる3つの方法についても概説しました。

もちろん、あなたは1つだけを知る必要があります。ただし、他の人が異なるアプローチを取り、読んだコードでそれらを使用する場合は、3つすべてを知っておくと役立つ場合があります。


  1. Pythonのタプルのリスト内の各タプルを逆にします

    タプルのリスト内の各タプルを逆にする必要がある場合は、ネガティブステップスライスを使用できます。 リストを使用して、異種の値(つまり、整数、浮動小数点、文字列などの任意のデータ型のデータ)を格納できます。タプルのリストには、基本的にリストで囲まれたタプルが含まれています。 負のスライスでは、正の数ではなく負の数を使用してインデックスにアクセスします。 以下は同じのデモンストレーションです- 例 def reverse_tuple(my_tuple):    return [tup[::-1] for tup in my_tuple]     &nb

  2. Pythonでサイズkのグループによってリンクリストを逆にするプログラム

    単一リンクリストがあり、別の値kがあるとすると、ノードのk個の連続するグループごとに逆にする必要があります。 したがって、入力がList =[1,2,3,4,5,6,7,8,9,10]、k =3の場合、出力は[3、2、1、6、5 、4、9、8、7、10、] これを解決するには、次の手順に従います- tmp:=値が0の新しいノード tmpの次:=ノード prev:=null、curr:=null lp:=temp、lc:=curr cnt:=k currがnullでない場合は、 prev:=null 0でcurrがnullでない場合は、 次の:=次のcurr 次