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

Pythonでリストを反復処理する方法とは?for文・range・enumerateの使い方を解説

Pythonでリストを反復処理する基本:for文

リストオブジェクトを反復処理(イテレーション)する方法はいくつかあります。最も基本的なのは for 文を使う方法です。Pythonの for 文には、リストの要素を先頭から末尾まで順番にたどり尽くすまで繰り返す形式があり、Javaの foreach 文に相当します。

書式は次のとおりです。

for var in list:
    stmt1
    stmt2

例1:for文でリストの全要素を出力する

次のスクリプトは、リスト内のすべての要素を出力します。index() メソッドを組み合わせることで、インデックス番号も同時に表示できます。

L = [10, 20, 30, 40, 50]
for var in L:
    print(L.index(var), var)

出力結果

0 10
1 20
2 30
3 40
4 50

例2:range()とlen()を使ったインデックスアクセス

もうひとつの方法として、range() にリストの長さ(len(L))を渡して反復し、その値をリストのインデックスとして利用するやり方があります。インデックス番号を明示的に扱いたい場合に便利な手法です。

for var in range(len(L)):
    print(var, L[var])

このコードも上記と同じ出力結果になります。

例3:enumerate()を使う方法

さらに、enumerate() 関数を使ってリストから enumerate オブジェクトを取得し、それを反復処理することもできます。インデックスと要素の値を同時に取り出せるため、より簡潔で読みやすいコードを書くことができます。

for var in enumerate(L):
    print(var)

このコードでも、各要素のインデックスと値が同様に出力されます。

  1. Pythonで辞書を反復処理する2つの方法をわかりやすく解説

    Pythonの辞書(dict)オブジェクトを反復処理する方法は主に2つあります。1つ目は、keys()メソッドでキーのリストを取得し、各キーに対応する値を取り出す方法です。keys()メソッドを使った反復処理>>> D1 = {1:a, 2:b, 3:c} >>> for k in D1.keys(): print (k, D1[k]) 1 a 2 b 3 c keys()メソッドは辞書内のすべてのキーを返します。ループ内でキーを変数kに受け取り、D1[k]のように記述することで、そのキーに関連付けられた値へアクセスできます。items()メソッドを

  2. Pythonで文字列のリストを並べ替える方法:sort()とsorted()の使い分け

    Pythonでは、文字列のリストを並べ替える方法が2つ用意されています。リスト自体を直接変更するsort()メソッドと、元のリストを保持したまま新しい並べ替え済みリストを作成するsorted()関数です。それぞれの特徴と使い方を解説します。 sort()メソッドでリストをその場で並べ替える sort()は、リストそのものを並べ替える「in-place(破壊的)」な操作です。元のリストの順序が直接変更されるため、戻り値を受け取る必要はありません。 >>> a = [Hello, My, Followers] >>> a.sort() >>>