logo

Python の For ループ

Python の For ループ は、順次走査に使用される特殊なタイプのループ ステートメントです。 Python For ループは、文字列、タプル、リスト、セット、辞書などの反復可能オブジェクトを反復処理するために使用されます。

Python には、C スタイルの for ループ、つまり for (i=0; I

目次



Python Forループのフローチャート

Python の For ループ

For ループのフローチャート

Python で for ループを使用する方法

Python では、for ループはシーケンス (リスト、タプル、文字列、辞書など) または任意の反復可能なオブジェクトを反復するために使用されます。 for ループの基本構文は次のとおりです。

PythonのForループ構文

for var in iterable:  # statements>

注記: Python の for ループ のみ を実装する コレクションベースの反復

ここでは、さまざまなタイプのイテラブルを使用した Python for ループの例を見ていきます。

アナログ通信

文字列を使用した Python For ループ

このコードは for ループを使用して、 各文字を新しい行に出力します。ループは各文字を変数 i に割り当て、文字列内のすべての文字が処理されるまで継続します。

パイソン
# Iterating over a String print('String Iteration') s = 'Geeks' for i in s: print(i)>

出力:

String Iteration G e e k s>

Range を使用した Python for ループ

このコードでは、インデックス付きの Python for ループを、 範囲() この関数を使用して、0 から始まり 10 まで (ただし、10 は含まない) ステップ サイズ 2 の一連の数値を生成します。シーケンス内の各数値について、ループは print() 関数を使用してその値を出力します。出力には、数値 0、2、4、6、および 8 が表示されます。

パイソン
for i in range(0, 10, 2): print(i)>

出力:

0 2 4 6 8>

Python for ループ列挙

Python では、 列挙() 関数は for ループで使用され、各項目のインデックスを追跡しながら反復可能オブジェクトを反復処理します。

パイソン
l1 = ['eat', 'sleep', 'repeat'] for count, ele in enumerate(l1): print (count, ele)>

出力

0 eat 1 sleep 2 repeat>

Python の入れ子になった For ループ

このコードは、ネストされた for ループを使用して 2 つの数値範囲 (1 ~ 3 を含む) を反復し、2 つのループの組み合わせごとに i と j の値を出力します。内側のループは、外側のループの i の値ごとに実行されます。このコードの出力では、i の各値が j の各値と結合されるため、1 から 3 までの数値が 3 回出力されます。

Javaラムダの例
パイソン
for i in range(1, 4): for j in range(1, 4): print(i, j)>

出力:

1 1 1 2 1 3 2 1 2 2 2 3 3 1 3 2 3 3>

Python For ループオーバーリスト

このコードは、for ループを使用して文字列のリストを反復処理し、リスト内の各項目を新しい行に出力します。ループは各項目を変数 I に割り当て、すべての項目が変数 I に割り当てられるまで継続します。 リスト 処理されています。

フォルダーの名前を変更する
パイソン
# Python program to illustrate # Iterating over a list l = ['geeks', 'for', 'geeks'] for i in l: print(i)>

出力:

geeks for geeks>

Python for ループを 1 行で実行する

パイソン
Numbers =[x for x in range(11)] print(Numbers)>

出力

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]>

辞書を使用した Python For ループ

このコードは for ループを使用して、 辞書 各キーと値のペアを新しい行に出力します。このループは各キーを変数 i に割り当て、文字列フォーマットを使用してキーとその対応する値を出力します。

パイソン
# Iterating over dictionary print('Dictionary Iteration') d = dict() d['xyz'] = 123 d['abc'] = 345 for i in d: print('% s % d' % (i, d[i]))>

出力:

Dictionary Iteration xyz 123 abc 345>

タプルを使用した Python For ループ

このコードは、タプルのアンパックを伴う for ループを使用して、タプルのタプルを反復処理します。各反復で、内部からの値は タプル はそれぞれ変数 a と b に割り当てられ、print() 関数を使用してコンソールに出力されます。出力には、内部タプルの値の各ペアが表示されます。

パイソン
t = ((1, 2), (3, 4), (5, 6)) for a, b in t: print(a, b)>

出力:

1 2 3 4 5 6>

Zip() を使用した Python For ループ

このコードでは、 ジップ() 2 つのリスト (果物と色) を並行して反復処理する関数。 for ループは、各反復で両方のリストの対応する要素を変数 Fruit と color に割り当てます。ループ内では、print() 関数を使用して、フルーツ値と色の値の間にあるメッセージを表示します。出力には、果物のリストの各果物が、色リストの対応する色とともに表示されます。

PowerShell 以上
パイソン
fruits = ['apple', 'banana', 'cherry'] colors = ['red', 'yellow', 'green'] for fruit, color in zip(fruits, colors): print(fruit, 'is', color)>

出力:

apple is red banana is yellow cherry is green>

PythonのForループで使用できる制御文

ループ制御ステートメントは、通常のシーケンスから実行を変更します。実行がスコープを離れると、そのスコープ内で作成されたすべての自動オブジェクトが破棄されます。 Python は次の制御ステートメントをサポートしています。

Python For ループで続行する

パイソン continue ステートメント 制御をループの先頭に戻します。

パイソン
# Prints all letters except 'e' and 's' for letter in 'geeksforgeeks': if letter == 'e' or letter == 's': continue print('Current Letter :', letter)>

出力:

Current Letter : g Current Letter : k Current Letter : f Current Letter : o Current Letter : r Current Letter : g Current Letter : k>

Python For ループでのブレーク

パイソン ブレークステートメント 制御をループから外します。

パイソン
for letter in 'geeksforgeeks': # break the loop as soon it sees 'e' # or 's' if letter == 'e' or letter == 's': break print('Current Letter :', letter)>

出力:

Current Letter : e>

Pass ステートメントを使用した Python の For ループ

pass ステートメント 空のループを書きます。 Pass は、空の制御ステートメント、関数、クラスにも使用されます。

パイソン
# An empty loop for letter in 'geeksforgeeks': pass print('Last Letter :', letter)>

出力:

Last Letter : s>

Else ステートメントを使用した Python の For ループ

Python では、ループに else 条件を使用することもできます。 for/while の直後の else ブロックは、ループが Break ステートメントで終了していない場合にのみ実行されます。

パイソン
# Python program to demonstrate # for-else loop for i in range(1, 4): print(i) else: # Executed because no break in for print('No Break
')>

出力:

なぜJavaでマーカーインターフェースを使うのか
1 2 3 No Break>

PythonのForループ 演習問題

以下は、Python の for ループに関する 2 つの演習問題です。これらの演習問題では、 continue ステートメントと range() 関数について説明しました。

Q1. for ループに Continue ステートメントを実装するコード

パイソン
clothes = ['shirt', 'sock', 'pants', 'sock', 'towel'] paired_socks = [] for item in clothes: if item == 'sock': continue else: print(f'Washing {item}') paired_socks.append('socks') print(f'Washing {paired_socks}')>

出力

Washing shirt Washing pants Washing towel Washing ['socks']>

Q2. for ループで range 関数を実装するコード

パイソン
for day in range(1, 8): distance = 3 + (day - 1) * 0.5 print(f'Day {day}: Run {distance:.1f} miles')>

出力

Day 1: Run 3.0 miles Day 2: Run 3.5 miles Day 3: Run 4.0 miles Day 4: Run 4.5 miles Day 5: Run 5.0 miles Day 6: Run 5.5 miles Day 7: Run 6.0 miles>