Python if文 else文 条件分岐

Pythonの条件とIf文

Pythonは数学からの通常の論理条件をサポートしています:

  • 等しい場合: a == b
  • 等しくない場合: a != b
  • より小さい場合: a < b
  • 以下の場合: a <= b
  • より大きい場合: a > b
  • 以上の場合: a >= b

これらの条件は、「if文」やループで最も一般的に使用されます。

インデント

Pythonはコードのスコープを定義するためにインデント(行の先頭の空白)を使用します。他のプログラミング言語では、この目的に波括弧が使用されることが多いです。

a = 33
b = 200
if b > a:
  print("b is greater than a")

Elif

elifキーワードは、「前の条件が真でない場合、この条件を試してみてください」というPythonの方法です。

a = 33
b = 33
if b > a:
  print("b is greater than a")
elif a == b:
  print("a and b are equal")

Else

elseキーワードは、前の条件に該当しないすべてをキャッチします。

a = 200
b = 33
if b > a:
  print("b is greater than a")
elif a == b:
  print("a and b are equal")
else:
  print("a is greater than b")

また、elifなしでelseを持つこともできます:

a = 200
b = 33
if b > a:
  print("b is greater than a")
else:
  print("b is not greater than a")

短縮形のIf

実行するステートメントが1つだけの場合、それをif文と同じ行に置くことができます。

if a > b: print("a is greater than b")

短縮形のIf … Else

実行するステートメントが1つだけの場合、ifとelseそれぞれに1つずつステートメントを置くことができます:

a = 2
b = 330
print("A") if a > b else print("B")

このテクニックは三項演算子または条件式として知られています。

また、同じ行に複数のelseステートメントを持つこともできます:

a = 330
b = 330
print("A") if a > b else print("=") if a == b else print("B")

And

andキーワードは論理演算子であり、条件文を組み合わせるために使用されます:

a = 200
b = 33
c = 500
if a > b and c > a:
  print("Both conditions are True")

Or

orキーワードは論理演算子であり、条件文を組み合わせるために使用されます:

a = 200
b = 33
c = 500
if a > b or a > c:
  print("At least one of the conditions is True")

Not

notキーワードは論理演算子であり、条件文の結果を反転させるために使用されます:

a = 33
b = 200
if not a > b:
  print("a is NOT greater than b")

ネストされたIf

ネストされたif文を使用することができます。これをネストされたif文と呼びます。

x = 41

if x > 10:
  print("Above ten,")
  if x > 20:
    print("and also above 20!")
  else:
    print("but not above 20.")

pass文

if文は空にすることはできませんが、何らかの理由で内容がないif文がある場合は、エラーを回避するためにpass文を入れてください。

a = 33
b = 200

if b > a:
  pass