Python forループ完全マスター: 構文・例・高度なパターン
Python forループ
リスト、タプル、文字列、その他イテラブルをPythonで走査する方法を、明確なステップバイステップ例で学びます。
動画: Python forループ
Pythonのforループとは?
forループはイテラブル(リスト、タプル、文字列など)をイテレートし、アイテムごとに1回コードブロックを実行します。
forループの構文
for val in sequence:
# loop body
ここでは、valがイテレーション中にsequenceから各要素を取得します。
最終要素後にループは自動終了。適切なインデントでループ本体を周囲のコードから分離。
forループのフローチャート

例: 数値リストの合計
# リストに格納されたすべての数値の合計を求めるプログラム
# 数値リスト
numbers = [6, 5, 3, 8, 4, 2, 5, 4, 11]
# 合計を格納する変数
sum = 0
# リストをイテレーション
for val in numbers:
sum = sum + val
print("The sum is", sum)
実行時出力:
The sum is 48
range()関数
range()関数は数値シーケンスを生成。range(10)は0から9を生成。
オプションのstart、stop、stepパラメータを受け付け:range(start, stop, step)。step省略時はデフォルト1。
内部ではrangeは遅延評価 – すべてを格納せず必要時に各数を計算。大規模シーケンスでメモリ効率的。
シーケンス全体を実体化するにはlist()でラップ:
print(range(10))
print(list(range(10)))
print(list(range(2, 8)))
print(list(range(2, 20, 3)))
出力
range(0, 10) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] [2, 3, 4, 5, 6, 7] [2, 5, 8, 11, 14, 17]
range()をforループで使うのは数値イテレーションや各要素のインデックス取得に一般的:
# インデックスを使ってリストをイテレーション
genre = ['pop', 'rock', 'jazz']
for i in range(len(genre)):
print("I like", genre[i])
出力
I like pop I like rock I like jazz
forループのelse節
forループにはオプションのelse節を含められます。elseブロックはループが正常完了した場合のみ実行(breakなし)。
例:
digits = [0, 1, 5]
for i in digits:
print(i)
else:
print("No items left.")
出力:
0 1 5 No items left.
breakと組み合わせると、else節で検索失敗を通知可能:
# 記録から学生の点数を表示
student_name = 'Soyuj'
marks = {'James': 90, 'Jules': 55, 'Arthur': 77}
for student in marks:
if student == student_name:
print(marks[student])
break
else:
print('No entry with that name found.')
出力
No entry with that name found.
Python
- C# for ループをマスターする:構文、フロー、実践例
- C++ forループ完全ガイド:ステップバイステップでマスター
- C言語forループ完全マスター:構文、仕組み、実践例
- Python 演算子完全マスター: 包括的ガイド
- Python whileループ完全マスター: 構文・例・ベストプラクティス
- Python ループ制御 break & continue 完全マスター
- Python辞書完全ガイド:作成、操作、高度なテクニック
- Pythonループ完全ガイド:for、while、break、continue、enumerate
- Python range()関数をマスター:基礎から応用まで
- Python enumerate()をマスター:リスト、タプル、文字列、辞書でインデックス付きループ
- Javaでアームストロング数を判定・列挙するプログラム