[python]if文を1行で書く3項演算子
3項演算子でif文を1行で書く
elseなしのif文はif 1==1:
print("true")
のように書きますがこれを1行で書くとif 1==1:print("true") #true
ただし、関数的に使うとエラーになります。
print(if 1==1:"true") #エラー
if 3==0:
print("true")
else:
print("false")
のように書きますがこれを1行で書くとprint("true") if 3==0 else print("false") #false
これを3項演算子といいます。
順番に注意してください。
3項演算子はelse文を省略できません。
また、関数的に使って、
print("true" if 3==0 else "false") #false
使い方は
真のとき if 条件式 else 偽のとき
3項演算子では何も値を返さないpassを使うことはできません。
print("true" if 3==0 else pass) #エラー
elifがある場合に3項演算子で書く
elifありのif文はn=3
if n<0:
print("minus")
elif 0<n:
print("plus")
else:
print("zero")
のように書きますがこれを1行で書くと、3項演算子を2重に使ってn=3;print("minus") if n < 0 else print("plus") if n > 0 else print("zero")
また、関数的に使って
n=3;print("minus" if n < 0 else "plus" if n > 0 else "zero")
ページ情報
タイトル | [python]if文を1行で書く3項演算子 |
URL | https://www.nomuramath.com/an4x5biy/ |
SNSボタン |
while文の基本
[python]for文の基本
[python]if文の基本的な使い方
[python]リスト内包表記
print([i**2 for i in range(5)]) #[0, 1, 4, 9, 16]