この記事では、Pythonの三項演算子の使い方を解説します。三項演算子を使うことで、条件分岐を1行で記述することができます。それでは、三項演算子の使い方を見ていきましょう!
スポンサーリンク
三項演算子の使い方
書式
三項演算子は以下のように記述します。
変数 = (条件式がTrueの時に代入される値) if (条件式) else (条件式がFlaseの時に代入される値)
サンプル
以下のコードは、受け取った整数が奇数か偶数かを判定して出力します。
num = int(input('int: '))
if num % 2 == 0:
text = '偶数'
else:
text = '奇数'
print(text)
このコードを三項演算子を使って書き直すと以下のようになります。
num = int(input('int: '))
text = '偶数' if num % 2 == 0 else '奇数'
print(text)
実行結果
int: 5
奇数
代入しない三項演算子
三項演算子は、変数に代入しなくても問題ありません。以下のコードでは値を返さずにそのままprint関数で出力しています。
num = int(input('int: '))
print('偶数') if num % 2 == 0 else print('奇数')
実行結果
int: 312
偶数
さらに複雑な三項演算子
以下のように記述することで、if-elif-elseを1行で表現することができます。
(条件式1がTrueの時に評価される式) if (条件式1) else (条件式1がFalseかつ条件式2がTrueの時に評価される式) if (条件式2) else (条件式1、条件式2がFalseの時に評価される式)
サンプル
以下のコードでは、numの値が1か2かそれ以外かを判定しています。
num = 1
s = 'numは1' if num == 1 else 'numは2' if num == 2 else 'numは1,2以外'
print(s)
実行結果
numは1 # num = 1
numは2 # num = 2
numは1,2以外 # num = 3
しかし、見てわかるように可読性が良くないので多用は控えましょう!
まとめ
この記事では、Pythonの三項演算子の使い方について解説しました。
三項演算子を使うことでif文を1行で記述することができます。なので、単純なif文は三項演算子を使って書いた方がとてもすっきりしたコードにすることができます。また、1行で記述しなければいけない場合(ラムダ式とか)に使用しましょう!
それでは今回の内容はここまでです。ではまたどこかで〜( ・∀・)ノ