[Python] 삼항 연산자 (Tenary Operator)

반응형

 

Python Logo

* 전체 코드

## 삼항연산자 기본
a=10
print("a is big" if a > 5 else "a is small")
# 출력: a is big

## 중첩 삼항연산자
a = 3
print("a is big" if a > 5 else "삼위일체" if a==3 else "a is small")
# 출력: 삼위일체

## 함수와 함께 삼항연산자
def test(p):
    print(f"a is {p}")
a=10
test("king") if a > 5 else test("god")
# 출력: a is king

 

Contents

    1. 배경

    python에는 if else 조건문을 한 줄로 쓸 수 있는 삼항 연산자가 있습니다. 아래와 같은 간단한 문법으로 사용합니다.

    [참일 때] if [조건문] else [거짓일 때]

    기본적인 사용법과 2 가지 활용법을 알아보겠습니다.

     

    2. 삼항 연산자 사용법

    a=10
    print("a is big" if a > 5 else "a is small")

    a가 숫자 10일 때, 삼항 연산자의 구성은 아래와 같습니다.

    [조건문] : a > 5

    [참일 때] : "a is big"

    [거짓일 때]: "a is small"

    a가 10보다 크므로, 조건문이 참일 때인 "a is big"을 출력합니다.

    * 출력

    기본 삼항연산자 예시

     

    3. 삼항 연산자 활용

    1) 삼항 연산자 중첩하기

    삼항 연산자 if else를 여러 번 중첩할 수 있습니다. 조건문이 2개일 때 중첩된 삼항 연산은 아래와 같습니다.

    [조건문1 참] if [조건문1] else [조건문1 거짓 and 조건문2 참] if [조건문2] else [조건문2 거짓]

    복잡해 보이니, 간단한 예시와 함께 보겠습니다.

    a = 3
    print("a is big" if a > 5 else "삼위일체" if a==3 else "a is small")

    위 코드는 아래와 같이 풀이됩니다.

    a가 5보다 크면 : "a is big" 

    a가 5보다 작거나 같고, 3이면: "삼위일체" 

    a가 5보다 작거나 같고, 3이 아니면: "a is small"

    * 출력

    중첩 삼항연산 예시

     

    이렇게 삼항 연산자를 중첩하면 마치 if elif else와 같은 꼴이 됩니다. 위 중첩된 삼항 연산 코드는 아래 if elif else코드로 바꿔 쓸 수 있습니다.

    if a > 5:
        print("a is big")
    elif a==3:
        print("삼위일체")
    else:
        print("a is small")

    * 출력

    중첩 삼항연산을 if-elif-else 구문으로

     

    2) 함수와 함께 삼항 연산자 사용

    삼항 연산에서 [참일 때], [거짓일 때] 부분에 단순히 python의 자료형인 문자열, 숫자만 쓸 수 있는 게 아니고, 실행 가능한 함수를 쓸 수 도 있습니다. 

    def test(job):
        print(f"a is {job}")
    
    a=10
    test("king") if a > 5 else test("god")

    test함수는 인자로 job을 입력받아, f-string을 통해 a is {job}으로 출력합니다. a=10이고, 삼항 연산의 구성은 아래와 같습니다.

    ( f-string 개념: [Python] f-string 포맷팅 (소수점, 퍼센트, 부동소수점))

    [조건문] : a > 5

    [참일 때] : test("king")

    [거짓일 때]: test("god")

    참이므로 test("king")이 실행되고 test함수 내부에서 "a is king"이 출력됩니다.

    * 출력

    함수와 함께 사용하는 삼항연산

     

    이상으로 Python 삼항 연산자의 기초 개념과 활용법을 알아보았습니다.

    다음에 더욱 재미있고 알찬 내용으로 찾아오겠습니다.

    읽어주셔서 감사합니다.

     

    * 위의 실습 코드는 아래의 깃허브에 모두 정리해두었습니다.

     

    GitHub - netsus/python_practice: basic python course

    basic python course. Contribute to netsus/python_practice development by creating an account on GitHub.

    github.com

     

    Reference)
    python logo: https://commons.wikimedia.org/wiki/File:Python_logo_and_wordmark.svg

     

    반응형

    댓글

    Designed by JB FACTORY