では､ どんなときにwhileループを使い､ どんなときにforループを使えばいいのでしょうか｡
そしてそれは､ 解決しようとする問題によって本当に違ってくるのです｡
例えば､ forループの中で､ リスト1､ 2､ 3の4つの項目を実行することができます｡
このコードを見ただけで､ 3回ループしていることがすぐにわかりますね｡
そうですね｡
そして､ ここでprint itemと言えるのですが､ これはwhile loopの中でもできます｡
私はゼロに等しいと言えます｡
そして､ Iが､ 例えばリストの長さよりも小さい間は､ 1､ 2､ 3となります｡
まあ､ その場合はIか項目を印字してインクリメントしてほしい｡
買ってしまうんです｡
これを実行すると
なるほど､ そうなんですね｡
技術的にはAIをインクリメントしていますが､ これは値です｡
だから､ 私のリストとこのリストは､ 1､ 2､ 3になる｡
さて､ 私のリストはforループで反復処理することも､ whileループで反復処理することもできます｡
そして､ 単純にマイリストと言います｡
Iのインデックスにて｡
そして､ これを実行すると
同じ結果が出る｡
でも､ どっちがいいと思う？
まず､ ループは非常に柔軟性がありますが､ この条件文があるからこそ､ いろいろなことができるんです｡
本当にやろうと思えば､ 3回以上ループさせることも可能です｡
その場合､ whileループはより強力ですが､ forループはよりシンプルになりますよね？
このコードは､ 本当にきれいに読み取ることができるような｡
理にかなっている｡
私たちは､ すでに知っていることをループさせたいだけなのです｡
Yループで何回3回ループさせたいか｡
この変数を作成し､ 無限ループにならないように､ 変数をインクリメントすることを忘れないようにしなければなりません｡
そのため､ whileループでは､ ある時点でループを停止させることを忘れないようにする必要があります｡
単純なループや反復可能なオブジェクトを反復処理する場合､ forループは非常に有効ですが､ 何回ループさせるかわからない場合は､
私のルールはこうです｡
ルーピングにどれくらい時間がかかるのか､ よくわからないんですね｡
だから､ 何かが真実である間は､ ただループし続けろ､ と言いたいのでしょう｡
例えば､ あるWebサイトで集めたメールリストを調べて､ それぞれのメールリストに対して､
メールを送りたい場合を考えてみましょう｡
まあ､ リストがあるうちは､ ひたすらメールを送り続けよう｡
いろいろなケースがありますが､ whileループの最も便利な使い方の1つは､ こんな感じです｡
ながらと言うことです｡
本当です｡
何とかしてくれ｡
そして､ 最後には必ず折れるようにする｡
ちょっと待ってください｡
どうしたんですか？
私が言っているのは､ 真実でありながら､ 無限ループが発生しないか､ ということです｡
つまり､ 真はいつまでも真であり､ それに気づけば正解なのです｡
しかし､ ここでもブレーク声明を出しています｡
だから最後､ 3行目を走らせた後､ 壊れそうなんです｡
しかし､ ここに入力するような強力なことができるようになりました｡
入力は､ 何かを入力するように促すものなので､ 「おい､ 入力､ 何か言えよ」と言えるわけです｡
そして､ 「実行」をクリックすると｡
おい､ 何か言えよ､ となりそうです｡
あのさぁ...｡
ここにセミコロンを追加するか､ ここにコールを追加して､ もう一度試して見ましょう｡
それは､ 何か言ってくださいと言っているのです｡
今､ 3行目なので､ ご挨拶に｡
そして､ それを見たか？
ループから脱却したところです｡
これは本当なのに､ 一度だけ聞かれました｡
4行目に入った途端､ もうダメでした｡
でも､ これを削除したらどうなるんだろう？
そして､ 「実行」をクリックします｡
何か言うと､ ハイと言いながら､ また聞いてくる｡
こんにちは｡
ハイと言ってるんです｡
そして､ それは私に尋ね続け､ 私に尋ね､ 私に尋ねます｡
そして､ 無限ループに陥ってしまう｡
しかし､ ここで面白いのは､ 条件付きロジックを使えるということですね｡
と言ったらどうでしょう｡
対応する｡
ここで､ レスポンスが何であれ収集して､ もしレスポンスが "by "と等しければ､ 私はブレークしますと言うのです｡
またこれを実行するように｡
私はハイと言いながら､ 何度も聞いてくる｡
そして､ ご存知ですか？
だんだんイライラしてきた
機械､ さようなら｡
私の場合は､ これで終了します｡
なんてかっこいいんでしょう｡
ですから､ ループはこのようにループが長く続くような作業には非常に便利ですが､
何回ループが起こるかわからない､ これはいずれ練習で慣れるしかないでしょう｡
そして､ whileを使うときとforループを使うときがわかるようになることを約束します｡
しかし､ 結局のところ､ あなたの問題を解決するものは何でも使ってください｡
次回作も見ます｡
さようなら｡