Pythonループ基礎
Pythonループ基礎
for文の使い方
Python初心者にとって、for文は最初に学ぶべきループ処理の代表格です。for文はイテラブル(反復可能)オブジェクトを順に取り出し、指定した処理を繰り返します。イテラブルとは、リスト、タプル、文字列、辞書、集合など、要素を順に取得できるオブジェクトのことです。
fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:
print(fruit)
上記の例では、fruitsリストの各要素を順にfruitに代入し、printで出力しています。for文はインデックスが不要な場合に便利で、コードが簡潔になります。
while文の使い方
while文は条件式が真である限り、ブロック内の処理を繰り返します。条件式が偽になるとループを抜けます。while文はループ回数が事前に決まっていない場合や、ユーザー入力を待つような場面でよく使われます。
count = 0
while count < 5:
print(count)
count += 1
上記の例では、countが5未満の間、printとインクリメントを繰り返します。while文は条件を忘れずに更新しないと無限ループになる危険があります。
rangeとイテラブル
rangeは整数のシーケンスを生成する組み込み関数です。range(start, stop, step)の形で呼び出し、startからstop-1までstepずつ増加する整数列を返します。rangeオブジェクト自体はイテラブルで、for文で直接使えます。
for i in range(3, 10, 2):
print(i)
上記では3から9まで2ずつ増える整数を出力します。rangeはメモリ効率が良く、数百万回のループでも高速に動作します。イテラブルはrangeだけでなく、文字列やタプル、辞書のキーなど多岐にわたります。
breakとcontinue
breakはループを即座に終了させるキーワードです。continueは現在の反復をスキップし、次の反復へ移ります。これらはループ内で条件に応じて処理を制御する際に非常に便利です。
for num in range(1, 10):
if num == 5:
break # 5になったらループ終了
if num % 2 == 0:
continue # 偶数はスキップ
print(num)
上記では1から9までの整数をループし、5に達したらbreakで終了します。偶数はcontinueでスキップし、奇数のみが出力されます。breakとcontinueを使いこなすことで、複雑な条件分岐をシンプルに書けます。
無限ループの注意
while文で条件を常に真にしてしまうと無限ループが発生します。無限ループはプログラムを停止させ、CPUを無駄に消費します。無限ループを意図的に使う場合は、必ずbreakで抜ける条件を設けるか、Ctrl+Cで強制終了できるようにしておくと安全です。
while True:
user_input = input('終了するには q を入力: ')
if user_input == 'q':
break
上記はユーザーがqを入力するまでループを続ける例です。無限ループを使う際は、必ず終了条件を明確にし、デバッグ時に無限ループに陥らないように注意しましょう。
コメント
コメントを投稿