「Pythonの繰り返し処理ってどうやるの?」「Pythonの基本的な使い方を教えてほしい!」という疑問や悩みを持っていませんか?
そんな悩みや疑問を解消できるように、この記事ではPythonの繰り返し処理について解説しています。
この講座は、これからPythonを学ぼうとする初心者の方がPythonの基本を学ぶための講座です。
Pythonの代表的な構文の使い方を具体的なコードを例にして解説しています。
この記事は、以下のような方におすすめ!
Pythonの繰り返し処理の使い方を知りたい方
Pythonの基本を学びたい方
繰り返し処理は、if文に続き非常によく使うフロー制御構文です。
この記事を読めば、Pythonの繰り返し処理を知り、プログラミングで扱えるようになります!
Pythonの基本をマスターして、Pythonプログラマーとしての一歩を踏み出しましょう!
前回の振り返り
前回の記事では、Pythonのフロー制御の基本について解説しました。
フロー制御の基本を確認できていない方は、こちらの記事もチェックしておきましょう。
今回のゴール
では、改めて今回のゴールを確認しましょう。
今回のゴールは、Pythonで繰り返し処理の方法を学び、実際に動作を確認することです。
今回提示している例だけでなく、ご自身でもいろいろな繰り返し処理を実行し、結果を確認してみてください。
Pythonの繰り返し処理
whileやfor-inなどのループ処理を中心に構文を確認していきます。
単純な繰り返しですが、ループ条件の指定方法などを確認しておきましょう。
whileループ
while文は、特定の条件がTrue である間、コードブロックを繰り返し実行するためのフロー制御構文です。
このループは、条件がFalse)になるまで、またはループから明示的に抜け出す命令が実行されるまで続きます。
whileループの基本構文は次のとおりです。
while 条件:
# 実行するコード
以下の例では、basketに格納されているフルーツがなくなるまで繰り返す処理になっています。
# リストを定義
basket = ['apple', 'orange', 'banana']
# 繰り返し
# basketの要素が0より大きい場合に、コードブロックを繰り返します。
while len(basket) > 0:
print(basket)
basket[0:1] = []
['apple', 'orange', 'banana']
['orange', 'banana']
['banana']
for-inループ
for-in文は、シーケンス(リスト、タプル、辞書、文字列など)を反復処理するために使用するフロー制御構文です。
この構文を使うことで、各要素に対して一連の操作を行うことができます。
基本構文は次のとおりです。
for 変数 in シーケンス:
# シーケンスの各要素に対して実行するコード
次の例では、basketというリストを定義し、リストの要素それぞれに対して同一の処理を行っています。
# リストを定義
basket = ['apple', 'orange', 'banana']
# リストないの要素全てに対して同じコードブロックを実行
for fruit in basket:
print(fruit,'in the basket')
apple in the basket
orange in the basket
banana in the basket
for-in文で固定回数ループする
for-in文で固定回数ループを回す場合には、range関数を使うと便利です。
for count in range(5):
print(count)
0
1
2
3
4
また、繰り返す値の範囲を指定することもできます。
for count in range(2, 4):
print(count)
2
3
増加量(ステップ数)を指定する場合は、range関数の第三引数に指定します。
以下の例では、3つずつ増加したループになります。
for count in range(2, 8, 3):
print(count)
2
5
Appendix
range関数は、リストを生成する際にも便利です。
list関数の引数にrange関数を指定すると、素早くリストを生成することができます。
list(range(3,8,3))
[3, 6]
else
ループの最後に一度だけ実行する命令を記述する際には、elseを利用します。
#リストを定義
basket = ['apple', 'banana', 'lemon', 'orange']
#elseを使ったループ
for fruit in basket:
if fruit[-1] == 'e':
print(fruit,'has the last spelling e.')
else:
print(fruit,'is not target.')
else:
print('loop finished.')
apple has the last spelling e.
banana is not target.
lemon is not target.
orange has the last spelling e.
loop finished.
最後に、else文で記述したprint('loop finished.')
が実行されていることがわかります。
break
ループの処理途中で、ループを中断したい場合に、break
を使用するとループを抜けることができます。
以下の例では、最後の文字がeでないフルーツだった場合にループを終了します。
breakするとループは終了するため、ループのelseの内容は実行されません。
# リストを定義
basket = ['apple', 'banana', 'lemon', 'orange']
# break文を使ったループ処理
for fruit in basket:
if fruit[-1] == 'e':
print(fruit,'has the last spelling e.')
else:
print(fruit,'is not target.')
break
else:
print('loop finished.')
apple has the last spelling e.
banana is not target.
2要素目のbananaで、ループが終了していることがわかりますね。
continue
ループ処理中に、そのループ回の後続処理を飛ばして、次のループへ処理を移すのがcontinue
文です。
continue文がスキップするのは、その回の後続処理のみで、残りのループ全てをスキップするわけではありません。
次の例では、continue
がなければすべてのループで「XXX does not match this condition」と出力されてしまいます。
# リストを定義
basket = ['apple', 'banana', 'lemon', 'orange']
# continue文を使ったループ処理
for fruit in basket:
if fruit[-1] == 'e':
print(fruit,'has the last spelling e.')
continue
print(fruit,'does not match this condition')
else:
print('loop finished.')
apple has the last spelling e.
banana does not match this condition
lemon does not match this condition
orange has the last spelling e.
loop finished.
appleとorangeのループで、continue文が呼び出されています。
まとめ
今回の記事では、Pythonの繰り返し処理ついて解説しました。
今回のポイントをまとめると、次のとおりです。
- while文は、条件式がTrueである間、コードブロックを繰り返し実行するためのフロー制御構文。
- for-in文は、リストなどのシーケンスを反復処理するために使用するフロー制御構文。
Pythonの繰り返し処理を知り、早速プログラミングで活用したいと思っていただけたのではないでしょうか。
Pythonの繰り返し処理は非常に便利なので、積極的に使用して経験値を積みましょう。
ぜひこの記事を参考にして、Pythonの繰り返し処理をマスターしてください!
以上、最後までお読みいただきありがとうございました。
未経験からのITエンジニア転職に挑戦したい方へ
転職も含めて真剣にプログラミングスキルを手に入れたいとお考えの方に、おすすめの方法をご紹介します。
結論から言うと、それは転職活動とスキル学習を同時に進める方法です!
同時に進める理由は、転職成功までの時間を短縮するためなんですが、
でも昼間は学校や本業もあるのに、転職活動と学習を同時にって無理!
って思いますよね?
そんな忙しい方には、スキル学習と転職サポートが一体となているウズカレIT
しかも、学習サポートも転職サポートも無料で利用できます!
ウズカレITはITスクールのウズウズカレッジ
体系的かつ総合的に学習サポートを受けることができます。
ITエンジニアはまだまだ売り手市場で、未経験可の求人もたくさんあります。
一度、ウズカレITの無料相談で不安に思ってることなどを相談してみるのがオススメです。