Python에서 삼항 연산자를 사용하는 방법(조건식)

Python에서 조건식(삼항 연산자)을 작성하는 방법을 알아보세요. 표준 if-else 블록과 인라인 조건을 비교합니다.

Editor에서 이 솔루션을 사용해 보세요.

개요

조건부 논리 작성은 프로그래밍의 핵심 부분입니다. 조건이 참인지 거짓인지에 따라 변수에 값을 할당해야 하는 경우가 많습니다. 예를 들어 사용자가 온라인인 경우 상태 라벨을 "활성"으로 설정하거나 사용자 이름이 제공되지 않은 경우 "Guest"를 할당합니다.

표준 `if-else` 문은 4줄의 코드를 사용하지만 Python은 삼항 연산자 또는 조건식이라는 간결한 단축형을 제공합니다. 이를 통해 조건을 평가하고 단일 논리 라인 내에 값을 할당할 수 있습니다. 구문은 'value_if_true if 조건 else value_if_false'입니다.

삼항 연산자는 간단한 평가에 사용될 때 가독성이 높으며 목록 이해, 반환 문 및 함수 호출 내부에 직접 배치될 수 있습니다. 그러나 여러 삼항 연산자를 함께 중첩하는 것은 금방 읽을 수 없게 되기 때문에 나쁜 습관입니다. 조건부 논리가 복잡하다면 표준 'if-elif-else' 블록을 작성하세요.

코드 및 실행 출력

이 스크립트는 Python 삼항 연산자를 사용하여 인라인 조건문을 작성하는 방법을 보여주고 이를 표준 if-else 블록과 비교합니다.

status = "active"

# 1. Traditional if-else assignment
if status == "active":
    label = "System Online"
else:
    label = "System Offline"
print("Traditional label:", label)

# 2. Pythonic ternary operator assignment (Equivalent)
label_ternary = "System Online" if status == "active" else "System Offline"
print("Ternary label:", label_ternary)

# 3. Using ternary operator inside a print statement
score = 85
print(f"Result: {'Pass' if score >= 50 else 'Fail'}")
터미널 출력
Traditional label: System Online
Ternary label: System Online
Result: Pass

단계별 구현

  • 삼항 표현식을 다음과 같이 구성합니다. true_value if 조건 else false_value.
  • 코드 공간을 줄이려면 변수 할당 내에 인라인 삼항 문을 사용하세요.
  • 깔끔한 가독성을 유지하려면 삼항 연산자(예: a if b else c if d else e)를 중첩하지 마세요.

자주 묻는 질문

Python 삼항 연산자는 표준 if-else 블록보다 느립니까?

아니요. 동일한 바이트코드 작업으로 컴파일되기 때문에 동일한 성능을 갖습니다. 컨텍스트에 대해 가장 읽기 쉬운 구문을 선택하십시오.

삼항 연산자 내에서 값을 반환하는 대신 명령문을 실행할 수 있나요?

아니요, 삼항 연산자는 표현식입니다. 즉, 값으로 평가되어야 합니다. 분기 내부에는 명령문(예: 할당 또는 인쇄 키워드)을 작성할 수 없습니다.

관련 주제

권장 Python 리소스

관련 대화형 튜토리얼, 치트 시트, 코드 비교를 통해 지식을 확장하세요.