前回のチュートリアルでは、while ループと、コード ブロックを複数回実行する方法について学びました。
Python には、「for ループ」や「ネストされたループ」など、他の種類のループがあります。 それらがどのように使用されているか見てみましょう。
ループ用
「for ループ」を使用して、文字列などのコレクションのアイテムを反復処理します。 文字列は一連の文字であるため、コレクションのように見えます。 したがって、for ループを使用して、文字列内の各文字を反復処理し、それに対して何かを行うことができます。
ここに例があります。
「for」と入力し、その後に変数と文字列を入力します。
for item in 'Python':
ここで「項目」とは Python という単語の文字を意味します。 ループの最初の繰り返しでは、「item」は「P」を意味し、XNUMX 回目の繰り返しでは「y」を意味します。 これを実行しましょう
この文字列の各文字が新しい行に出力されていることがわかります。
別の例を見てみましょう。 Python では、角括弧を使用してリストを定義できます。 それでは、角括弧を使用してリストを定義しましょう。
for item in ['Shahbaz', 'Aayush', 'Jay']:
print(item)
これで、XNUMX つの名前が別々の行にリストされます。
この設定では、数値のリストを使用することもできます。 0 から 9 までのすべての数字を入力する代わりに、関数「Range」を使用して単純化します。 それがどのように行われるか見てみましょう。
for item in range(10):
print(item)
0 以外で開始するようにプログラムすることもできます。
for item in range(5, 10):
端末に5から9までの数字を出力します。
「Range」機能は、ステップを入力として受け取ることもできます。 したがって、次のように書くと:
for item in range(5, 10, 2):
5、7、および 9 が出力されます。これは、反復ごとに XNUMX ステップ進むことを意味します。
運動
ここで、演習を行います。 ショッピング カート内のすべての商品の合計金額を計算するプログラムを作成してください。 たとえば、10、20、30 のような価格のリストがあるとします。for ループを使用して、架空のショッピング カート内のすべてのアイテムの合計コストを計算してください。
頭を働かせて、それができるかどうか見てみましょう。 不正行為はありません。
ソリューション
このような価格をリストすることから始めることができます。
prices = [10, 20, 30]
ここで、最初の反復で 0 から始まる合計価格の変数を追加します。
total = 0
これが for ループです。
for price in prices:
total = total + price
// 次のように簡略化できます total += price
print(f"Total: {total}")
ネストされたループ
Python では、ネストされたループを使用することは、基本的に別のループの中に XNUMX つのループを追加することを意味します。この手法を使用すると、いくつかの驚くべきことができます。 たとえば、座標のリストを簡単に生成できます。
ご存知のように、座標は「x」と「y」の値の組み合わせです。 0 と 0 としましょう。今度は、このような座標のリストを生成したいとしましょう。 0 と 0 があり、次に 0 と 1、次に 0 と 2 があります。
次に、「x」を変更します。 「x」には 1 を使用し、「y」座標にはこれら 3 つの値を使用します。
ネストされたループを使用して、これらの座標を簡単に生成できます。
披露させて。
for x in range(4):
for y in range(3):
print(f'({x}, {y}')
出力を確認しましょう。
それでは、このプログラムがどのように実行されるかを正確に説明しましょう。 外側のループの最初の反復では、'x' は 0 です。これで 2 行目になり、内側のループと呼ばれる新しいループができました。 この内部ループでは、最初の反復で「y」が 0 になるため、0 と 0 が端末に出力されます。
ここで、制御は 2 行目または内側のループに戻ります。 この 1 回目の繰り返しでは、'y' が 0 に設定されますが、まだ外側のループの最初の繰り返しです。 したがって、「x」はまだ 1 ですが、「y」は XNUMX にインクリメントされます。
そのため、端末に 0 と 1 が表示されます。 これは、内側のループが実行されるまで続き、インタープリターは再び外側のループに移動し、このプロセスは外側のループが完了するまで続きます。
課題
ここに演習がありますが、これはこれまでに行った演習よりも少し難しいものです。
ネストされたループを使用して、この「F」形状を描画するコードを記述します。
ソリューション
numbers = [5, 2, 5, 2, 2]
for x_count in numbers:
output = ''
//出力変数を空の文字列にリセットします。
for count in range(x_count):
output += 'x'
print(output)
ネストされたループを使用せずにこれを実行する、はるかに簡単な方法があります。 私はあなたが理解するためにそれを残します。
要約
皆さんも講義を重ねるごとに熱が上がっていくのを感じていますか?
確かにそう感じます。 私はあなたが理解できるようにずっと簡単にしました。
次回の講義で取り上げましょう。
コメントを残す