【Python】三項演算子の使い方

Python

この記事では、Pythonの三項演算子の使い方を解説します。三項演算子を使うことで、条件分岐を1行で記述することができます。

三項演算子の使い方

三項演算子は、if文を使って1行で表現できます。

【Python】条件分岐する方法【if文の使い方】【Python】条件分岐する方法【if文の使い方】

書式

三項演算子は以下のように記述します。

変数 = 条件式がTrueの時に代入される値 if 条件式 else 条件式がFlaseの時に代入される値

サンプル

以下のコードは、受け取った整数が奇数か偶数かを判定して出力します。

num = int(input('int: '))

if num % 2:
    text = '奇数'
else:
    text = '偶数'

print(text)

このコードを三項演算子を使って書き直すと以下のようになります。

num = int(input('int: '))

text = '奇数' if num % 2 else '偶数'
print(text)

実行結果

int: 5
奇数

代入しない三項演算子

三項演算子は、変数に代入しなくても問題ありません。

num = int(input('int: '))

print('奇数') if num % 2 else print('偶数')

実行結果

int: 312
偶数

複数の値を返す三項演算子

タプルを使うことで、一度に複数の値を返すことができます。

Pythonのtuple(タプル)とはなんぞや?【タプルの使い方】Pythonのtuple(タプル)とはなんぞや?【タプルの使い方】

書式

以下のように記述します。

変数1, 変数2 = 条件式がTrueの時に代入されるタプル if 条件式 else 条件式がFalseの時に代入されるたタプル

サンプル

以下のコードは、三項演算子で2つの値を返しアンパックして受け取っています。

num1 = int(input('num1: '))
num2 = int(input('num2: '))

b, s = ('num1', 'num2') if num1 > num2 else ('num2', 'num1')
print(f'{s} < {b}')

実行結果

num1: 4
num2: 8
num1 < num2
タイトルとURLをコピーしました