【初心者向け】Pythonの多重ループを図解でやさしく解説|ループ順にもう迷わない!

🐣 はじめに:多重ループって難しそう?

Pythonを学び始めたばかりのころ、「for文の中にfor文を入れる多重ループ」が出てきて混乱したこと、ありませんか?

私も最初は、「どっちを外側に書けばいいの?」「何回ループするのか、わけがわからない…」と迷ってばかりでした。

この記事では、Python初心者の目線で、多重ループの基本から、ループの順番の考え方まで、やさしく・図解つきで解説します。

🔁 多重ループとは?

多重ループとは、ループの中にもう一つループがある状態のことです。例えばこんなコード:

for i in range(3):
    for j in range(2):
        print(i, j)

このコードは、以下のように i=0 のときに j=0,1 を回し、i=1 のときも j=0,1… というように、外側のループが1回動くたびに、内側のループが全部動く仕組みです。

🧩 どちらを外側にすべき?迷ったときの考え方

私が最初に迷ったのがこれです。

例えば、「単語リスト c の各要素が、文リスト s のどれかに含まれているか」を調べるプログラムを書きたいとします。

c = ["dog", "cat"]
s = ["I have a dog", "Cats are cute"]

✅ 正しいループの順番

for c_word in c:
    for s_word in s:
        if c_word in s_word:
            print("YES")
        else:
            print("NO")

ポイント:
主語(基準)になる方を外側にする。「cの単語それぞれについて、sに含まれているか確認したい」なら c を外側に!

📊 図で理解しよう

チェックする単語 (c_word) 文 (s_word) 結果
“dog” “I have a dog” YES
“dog” “Cats are cute” NO
“cat” “I have a dog” NO
“cat” “Cats are cute” NO

🧠 応用:逆パターンにするとどうなる?

もし s を外側にしたらどうなるでしょう?

for s_word in s:
    for c_word in c:
        if c_word in s_word:
            print("YES")
        else:
            print("NO")

これは「文sの中にどの単語が含まれているか」を調べたい場合に使います。

🛠️ 実際に手を動かそう(練習問題つき)

簡単な練習問題です。

  • 単語リスト keywords = ["apple", "banana"]
  • 文リスト texts = ["I like apple pie", "Banana is yellow"]

このとき、各キーワードが各文に含まれているかをチェックするコードを書いてみましょう!

💻 一人で学ぶのが不安なあなたへ

Pythonの基礎を身につけるなら、プロのサポート付きの講座や動画学習も心強い味方になります。

🧑‍🏫 TechAcademy(テックアカデミー)

TechAcademyのPythonコース は、マンツーマンのサポートで、初心者でも安心してPythonを学べます。

📺 Schoo(スクー)

Schoo(スクー) は、動画でサクッと学びたい人向け。ライブ配信や見逃し視聴も可能です。

📌 まとめ:ループ順のコツを身につけよう

  • ループの外側は「基準」にしたい対象
  • 内側は「比較・調査したい対象」
  • 図でイメージをつかむとスッキリ!

Python学習において、ループの順番に迷わなくなることは大きな自信になります。

マンツーマンサポートで深く学ぶなら TechAcademyのPythonコース
気軽にスタートしたいなら Schoo(スクー) がぴったりです。

あなたのPython学習が、より楽しく、スムーズになりますように🍀

上部へスクロール