if | 条件分岐開始 | Python予約語 徹底解説 使い方と注意点

現在作成中です。今後加筆修正してまいります。
スポンサーリンク
スポンサーリンク

Pythonの予約語「if」の解説

ifとは何か

ifは、Pythonにおいて条件分岐を行うために使用される予約語です。if文は、指定された条件がTrueであれば、その後に続くブロックのコードが実行されます。条件がFalseの場合、そのブロックはスキップされます。条件に基づいて処理の流れを制御するための基本的な構文です。

if文の基本的な構文

以下は、if文の基本的な構文です。条件式がTrueの場合に、ifブロック内のコードが実行されます。

x = 10
if x > 5:
    print("xは5より大きい")

このコードでは、xが5より大きいため、「xは5より大きい」というメッセージが出力されます。条件式x > 5Trueだからです。

if-else文

if文とelse文を組み合わせることで、条件がFalseの場合に別の処理を実行できます。

x = 3
if x > 5:
    print("xは5より大きい")
else:
    print("xは5以下です")

この例では、xが5以下のため、elseブロックが実行され、「xは5以下です」が出力されます。ifの条件がFalseであるため、elseブロックが選択されます。

if-elif-else文

if文にelif(else ifの略)を追加すると、複数の条件を順番に評価し、最初にTrueとなる条件の処理が実行されます。elifは任意の回数使うことができます。

x = 7
if x > 10:
    print("xは10より大きい")
elif x > 5:
    print("xは5より大きいが、10以下です")
else:
    print("xは5以下です")

この例では、xが7であるため、最初のif条件はFalseですが、次のelif条件がTrueとなり、「xは5より大きいが、10以下です」が出力されます。

ネストされたif文

Pythonでは、if文を他のif文の内部に書くことができます。これにより、複雑な条件分岐を実現できます。次の例では、二重のif文を使っています。

x = 10
if x > 5:
    print("xは5より大きい")
    if x > 8:
        print("xは8より大きい")

この例では、xが5より大きいときに、さらに8より大きいかどうかがチェックされます。xが10なので、両方の条件がTrueとなり、2つのメッセージが出力されます。

if文での論理演算

if文の条件式では、andorなどの論理演算子を使って、複数の条件を組み合わせることができます。

x = 7
y = 12
if x > 5 and y < 15:
    print("xは5より大きく、yは15未満です")

このコードでは、xが5より大きく、かつyが15未満であるため、両方の条件がTrueとなり、「xは5より大きく、yは15未満です」というメッセージが出力されます。

if文の流れ

以下は、if-elif-else文の処理の流れを表にしたものです。

条件の状態 実行されるブロック
ifの条件がTrue ifブロックが実行され、残りの条件は無視される
ifFalseelifTrue elifブロックが実行され、残りの条件は無視される
すべてのifelifFalse elseブロックが実行される

if文の注意点

  • 条件式では、値そのものがTrueFalseかも評価できます。例えば、0や空のリストはFalseとして扱われます。
  • インデントは必須です。if文に続くコードは、同じインデントレベルで記述する必要があります。
  • 複雑な条件分岐を避けるため、論理演算子を上手に使うことが推奨されます。

まとめと注意点

  • if文は、条件に基づいて処理を分岐させるための基本的な構文です。
  • elseelifを使うことで、より複雑な条件分岐が可能になります。
  • 条件式では、論理演算子andorを使って複数の条件を組み合わせることができます。
  • インデントのルールに注意し、if文内のコードが正しくインデントされていることを確認しましょう。