Python If ... Else
Pythonの条件とIfステートメント
Pythonは、数学の通常の論理条件をサポートしています。
- 等しい:a == b
- 等しくない:a!= b
- 未満:a <b
- 以下:a <= b
- 大なり記号:a> b
- 以上:a> = b
これらの条件は、いくつかの方法で使用できます。最も一般的なのは、「ifステートメント」とループです。
「ifステートメント」は、ifキーワードを使用して記述されます。
例
Ifステートメント:
a = 33
b = 200
if b > a:
print("b is greater than a")
この例では、2つの変数aとbを使用します。これらは、ifステートメントの一部として使用され、bがaより大きいかどうかをテストします。aが33で、bが200であるため、200は33より大きいことがわかっているので、「bはaより大きい」と画面に出力します。
インデント
Pythonは、インデント(行頭の空白)に依存してコード内のスコープを定義します。他のプログラミング言語では、この目的で中括弧を使用することがよくあります。
例
インデントなしのifステートメント(エラーが発生します):
a = 33
b = 200
if b > a:
print("b is greater than a")
# you will get an error
エリフ
elifキーワードは、「前の条件が真でなかった場合は、この条件を試してください」というpythonsの言い方です。
例
a = 33
b = 33
if b > a:
print("b is greater than a")
elif a == b:
print("a and b are equal")
この例では、 aはbに等しいため、最初の条件は真ではありませんが、elif条件は真であるため、「aとbが等しい」と画面に出力します。
それ以外
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")
この例では、aがbより大きいため、最初の条件は真ではなく、elif条件も真ではないため、else条件に移動して、「aはbより大きい」という画面に出力します。
else
なしで
持つこともできますelif
:
例
a = 200
b = 33
if b > a:
print("b is greater than a")
else:
print("b is not greater than a")
速記の場合
実行するステートメントが1つしかない場合は、ifステートメントと同じ行に配置できます。
例
1行のifステートメント:
if a > b: print("a is greater than b")
速記の場合...その他
実行するステートメントが1つだけ、if用に1つ、else用に1つしかない場合は、すべてを同じ行に配置できます。
例
elseステートメントの場合は1行:
a = 2
b = 330
print("A") if a > b else print("B")
この手法は、三項演算子または条件式として知られています。
同じ行に複数のelseステートメントを含めることもできます。
例
3つの条件を持つelseステートメントの場合は1行:
a = 330
b = 330
print("A") if a > b else print("=") if a == b else print("B")
と
andキーワードは論理演算子であり、条件ステートメントを組み合わせるために使用されます。
例
より大きいかどうか、およびa
より大きい
かどうかをテストします。b
c
a
a = 200
b = 33
c = 500
if a > b and c > a:
print("Both conditions are True")
または
or
キーワードは論理演算子であり、条件ステートメントを組み合わせるために使用されます。
例
より大きいかどうか、またはa
より大きい
かどうかをテストします。b
a
c
a = 200
b = 33
c = 500
if a > b or a > c:
print("At least one of the conditions is True")
ネストされた場合
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.")
パスステートメント
if
ステートメントを空にすることはできませんが、何らかの理由if
で内容のないステートメントがある場合はpass
、エラーが発生しないようにステートメントを挿入してください。
例
a = 33
b = 200
if b > a:
pass