Pythonのfor文の基本
Pythonのfor
文は、シーケンス(リストやタプル、文字列など)の各要素に対して、一連のステートメント(命令)を実行します。基本的な構文は以下のようになります。
for 変数 in シーケンス:
実行する命令
ここで、変数
はシーケンスの各要素が順に代入され、その値を用いて実行する命令
が繰り返し実行されます。
例えば、1から5までの整数を順に出力するプログラムは以下のようになります。
for i in range(1, 6):
print(i)
このプログラムを実行すると、出力結果は以下のようになります。
1
2
3
4
5
このように、Pythonのfor
文はシーケンスの各要素に対する操作を簡潔に記述することができます。次のセクションでは、range
関数について詳しく説明します。この関数は、連続した整数のシーケンスを生成するのによく使われます。この機能は、for
文と組み合わせて使用すると非常に強力です。それでは、次のセクションで詳しく見ていきましょう。
range関数で連続した整数を生成する
Pythonのrange
関数は、指定した範囲の連続した整数を生成するために使用されます。基本的な構文は以下のようになります。
range(開始, 終了, ステップ)
ここで、開始
は範囲の開始値(この値を含む)、終了
は範囲の終了値(この値を含まない)、ステップ
は数値間の差です。ステップ
は省略可能で、その場合のデフォルト値は1です。また、開始
も省略可能で、その場合のデフォルト値は0です。
例えば、1から5までの整数を生成するには以下のようにします。
for i in range(1, 6):
print(i)
このプログラムを実行すると、出力結果は以下のようになります。
1
2
3
4
5
また、2つ飛ばしで数値を生成するには以下のようにします。
for i in range(1, 10, 2):
print(i)
このプログラムを実行すると、出力結果は以下のようになります。
1
3
5
7
9
このように、range
関数はfor
文と組み合わせて使用すると、連続した整数に対する操作を簡単に記述することができます。次のセクションでは、if
文について詳しく説明します。これは、条件に基づいてプログラムの流れを制御するための重要な機能です。それでは、次のセクションで詳しく見ていきましょう。
if文で条件分岐を行う
Pythonのif
文は、指定した条件が真(True)であるかどうかに基づいてプログラムの流れを制御します。基本的な構文は以下のようになります。
if 条件:
条件が真の場合に実行する命令
ここで、条件
は真または偽(False)の値を返す任意の式で、その結果に基づいて実行する命令
が実行されます。
例えば、ある数値が偶数であるかどうかを判定するプログラムは以下のようになります。
num = 10
if num % 2 == 0:
print(f"{num}は偶数です。")
このプログラムを実行すると、出力結果は以下のようになります。
10は偶数です。
また、if
文はelse
やelif
と組み合わせて、より複雑な条件分岐を行うことができます。
num = 10
if num % 2 == 0:
print(f"{num}は偶数です。")
else:
print(f"{num}は奇数です。")
このプログラムを実行すると、出力結果は以下のようになります。
10は偶数です。
このように、Pythonのif
文はプログラムの流れを制御するための重要な機能です。次のセクションでは、for
文とif
文を組み合わせた使用例について詳しく説明します。それでは、次のセクションで詳しく見ていきましょう。
for文とif文の組み合わせ
Pythonのfor
文とif
文を組み合わせることで、シーケンスの各要素に対して条件に基づいた操作を行うことができます。以下に、1から10までの整数の中で偶数だけを出力するプログラムを示します。
for i in range(1, 11):
if i % 2 == 0:
print(i)
このプログラムを実行すると、出力結果は以下のようになります。
2
4
6
8
10
このように、for
文とif
文を組み合わせることで、特定の条件を満たす要素に対してのみ操作を行うといった、より複雑な処理を簡潔に記述することができます。
また、for
文とif
文を組み合わせたリスト内包表記については次のセクションで詳しく説明します。それでは、次のセクションで詳しく見ていきましょう。
リスト内包表記とif文の組み合わせ
Pythonのリスト内包表記は、シーケンスの各要素に対して操作を行い、その結果を新たなリストとして生成するための簡潔な記法です。for
文とif
文を組み合わせることで、特定の条件を満たす要素に対する操作だけを行うといった処理を一行で記述することができます。
以下に、1から10までの整数の中で偶数だけを抽出して新たなリストを生成するプログラムを示します。
even_numbers = [i for i in range(1, 11) if i % 2 == 0]
print(even_numbers)
このプログラムを実行すると、出力結果は以下のようになります。
[2, 4, 6, 8, 10]
このように、リスト内包表記を用いると、for
文とif
文を組み合わせた複雑な処理を簡潔に記述することができます。これにより、コードが読みやすくなり、プログラムの可読性が向上します。
以上で、Pythonのfor
文、range
関数、if
文の基本的な使い方と、それらを組み合わせた使用例について説明しました。これらの知識を活用して、Pythonプログラミングの幅を広げてみてください。それでは、次のセクションで詳しく見ていきましょう。
実例による理解の深化
ここまで、Pythonのfor
文、range
関数、if
文の基本的な使い方と、それらを組み合わせた使用例について説明しました。しかし、これらの知識を実際の問題解決に活用するためには、具体的な実例を通じて理解を深めることが重要です。
以下に、これらの概念を活用した具体的なプログラム例を示します。このプログラムは、1から100までの整数の中で3の倍数だけを抽出し、それらの数の合計を計算します。
sum = 0
for i in range(1, 101):
if i % 3 == 0:
sum += i
print(sum)
このプログラムを実行すると、出力結果は以下のようになります。
1683
このプログラムは、for
文を用いて1から100までの整数を順に生成し、if
文を用いてその中から3の倍数だけを抽出しています。そして、抽出した数を合計しています。
このような具体的な実例を通じて、Pythonのfor
文、range
関数、if
文の使い方を理解し、それらを組み合わせて複雑な処理を行う能力を身につけることができます。これらの知識を活用して、Pythonプログラミングの幅を広げてみてください。それでは、次のセクションで詳しく見ていきましょう。