forサイクルとwhileサイクル


  • (1)ループを終了する際、いくつかの変数の値の変化状況、特に内部に自己加算自減などの操作が含まれていることに注意しなければならない.

  • 本稿では,whileサイクルがforサイクルよりも自由であるという結論を得ることができるだろうか.つまりforサイクルでできることは、whileサイクルでもできるが、whileサイクルでできることは、forサイクルでできるとは限らない.
    Python言語のforサイクルに対する支持は実はC言語に及ばない.Pythonのforサイクルは、判断の意味がなく、遍歴が多いが、whileサイクルは天然の判断である.
  • while循環天然は判断論理を有し、for循環は循環内部に判断論理を追加する必要があり、満たさなければbreakである.
  • whileサイクルはサイクル変数の更新をサイクルの内部に置いて、自分で指定することができて、forサイクルは天然に1を加える動作を内蔵しました;

  • 両者の違いは、1つの例で集中的に表現できます.
    #           
    def merge(l1, l2):
        l3 = []
        i, j = 0, 0
        n1, n2 = len(l1), len(l2)
        while i < n1 and j < n2:
            if l1[i] <= l2[j]:
                l3.append(l1[i])
                i += 1
            else:
                l3.append(l2[j])
                j += 1
        if i < j:
            l3.extend(l1[i:])
        else:
            l3.extend(l2[j:])
        return l3

    1.ちょっと変わった形のforループ
    static int NextPrime(int N) {
        if (N % 2 == 0) ++N;
        int i;
        for (; ; N += 2)
    }

    さらに重要なのは、1つのforループにとって、while (true)のようなループの終了条件さえ指定されていないことである.