まず、三項演算子とは何でしょうか?
三項演算子は、三項演算子または条件演算子とも呼ばれ、Python では「if else」ステートメントを使用して実装されます。
Python の三項演算子は、exp1 if 条件 else exp2 として表現できます。
exp1、exp2は式、conditionは判定条件です。
2 番目によく使用される三項演算子
1. 単純な三項演算子
三項演算子は、if else ステートメントを使用して条件が true かどうかを判断し、対応する式を決定します。
a = 20
b = 10
num = a if a > b else b
print(num)
# output: 20
a = 20
b = 30
num = a if a > b else b
print(num)
# output: 30
a = 25
b = 25
num = a if a > b else b
print(num)
# output: 25
a = 20
b = 10
num = a - b if a > b else a + b
print(num)
# output: 10
a = 10
b = 20
num = a - b if a > b else a + b
print(num)
# output: 30
c = 2
print('c为偶数') if c % 2 == 0 else ('c为奇数')
# output: c为偶数
c = 3
print('c为偶数') if c % 2 == 0 else ('c为奇数')
# output: c为奇数
2. 入れ子になった三項演算子
ネストされた三項演算子は if else ステートメントを順番に実行し、複数の条件を設定して対応する式を選択できます。
a = 20
b = 10
c = 20
num = a if a > b else c if a + b > c else a + b
print(num)
# output: 20
a = 5
b = 20
c = 20
num = a if a > b else c if a + b > c else a + b
print(num)
# output: 20
a = 5
b = 10
c = 20
num = a if a > b else c if a + b > c else a + b
print(num)
# output: 15
たとえば、上記のコードは、まず a>b が True かどうかを判断し、True の場合は a を出力し、False の場合は次の if else ステートメントを実行し続けます。つまり、a+b>c であるかどうかを判断します。 True の場合は c を出力し、False の場合は a+b を出力します。