if 문을 줄바꿈을 쓰지 않고 한줄로 쓰는것을 말한다.
다른 언어에서는 이러한 표현을 삼항연산자(Ternary Operator)라고 부르기 때문에 간혹 삼항연산자라고 부르기도 한다.
if not A: 단항 연산자
a + b: 이항 연산자
[참인 경우의 값] if [조건] else [거짓일 경우의 값]: 삼항 연산자
일반적인 if ~ else 문을 통해서 하는 연산을 한 줄로 간결하게 나타낼 수 있다.
또한 리스트 컴프리헨션 등을 사용할 때도 조건문을 간결하게 나타낼 수 있다.
a = 10
# 일반적인 if ~ else 구문
if a > 5: # [True 일 때]
print("a는 5보다 크다")
else: # [False 일 때]
print("a는 5보다 작다")
같은 값을 출력하는 삼항 연산자 if ~ else 구문:
print("a는 5보다 크다") if a > 5 else print("a는 5보다 작다")
# List Comprehension
[i for i in range(10) if i >5]
중첩해서 쓸 수도 있다.
[True1] if [Condition1] else [True2] if [Condition2] else [False]
일반 if 문:
if [Condition1]:
[True1]
elif [Condition2]:
[True2]
else
[False]