Python의 삼항 조건 연산자
이 자습서에서는 Python에서 삼항 연산자를 사용하는 다양한 방법을 정의합니다. 다른 프로그래밍 언어와 비교할 때 Python에서 삼항 연산자를 사용하는 다른 방법이 있습니다. 파이썬 버전과의 호환성에 따라 삼항 연산자를 사용하는 다양한 방법이 있습니다. 이 튜토리얼은 다른 Python 버전에서 삼항 연산자를 사용하는 방법을 설명하는 예제 코드를 제공합니다.
Python 2.5 이상에서 삼항 연산자 사용
삼항 조건 연산자는 Python 2.5에서 추가되었습니다. 삼항 연산자는 세 개의 피연산자를 취하는 연산자로 정의됩니다. 이 방법에서는 먼저 주어진condition
이 평가 된 다음 값 중 하나가 평가되고 부울 연산자를 기반으로 다시 전송됩니다. 먼저 표현식을 취한 다음 조건이 다시 나오고 표현식의else
부분이 이어집니다.
파이썬에서 삼항 연산자의 구문은 다음과 같습니다.
value_if if condition else value_else
삼항 연산자가 먼저condition
을 평가하므로 단락이 허용되고 두 표현식 중 하나만 평가됩니다. condition
이 참이면 첫 번째 표현식value_if
가 평가되고 그렇지 않으면 두 번째 표현식value_else
가 평가됩니다.
아래 예제 코드는 Python에서 삼항 연산자를 사용하는 방법을 보여줍니다.
a = 2
b = 0
1 if a > b else 0
출력:
1
삼항 조건부 연산자의 출력은 아래 예제 코드와 같이 변수에 할당 될 수 있습니다.
a = 2
b = 0
temp = a if a > b else b
print(temp)
출력:
2
튜플을 사용하는 Python의 삼항 연산자
Python의 삼항 연산자는 튜플을 사용하여 사용할 수 있습니다. 평가할 표현식과 부울 조건문이 필요합니다. 반환되는 표현식은 부울 조건에 따라 다릅니다. 조건이 참이면 첫 번째 값이 반환되고식이 거짓이면 두 번째 값이 반환됩니다. 그러나 어떤 경우에도이 방법은 우승 한 표현식 만이 아닌 모든 것을 평가합니다.
이 삼항 연산자를 튜플을 사용하여 파이썬에서 사용하는 방법을 보여주는 예제 코드가 아래에 제공됩니다.
a, b = 12, 43
temp = (a * 2, b / 2)[a < b]
print(temp)
출력:
21.5
2.5 이전 버전에 대해lambda
를 사용하는 삼항 연산자
Python 2.5 이전 버전의 경우lambda
와 함께 삼항 연산자를 사용할 수 있습니다. 이 메서드는 반환 할 값과 부울 식을 사용합니다. 이 방법은 값이 필요할 때까지 평가 프로세스를 지연시키는 게으른 평가 기법을 따릅니다. 이런 의미에서 튜플 방법보다 더 나은 접근 방식입니다. 이 메소드의 표현식은(falseValue, trueValue)[Test]()
로 제공됩니다. 테스트 조건이True
로 평가되면trueValue
가 인쇄됩니다. 그렇지 않으면falseValue
가 인쇄됩니다.
Python에서lambda
와 함께 삼항 연산자를 사용하는 방법을 설명하는 예제 코드가 아래에 제공됩니다.
val1, val2 = 12, 43
output = (lambda: val2, lambda: val1)[val1 > val2]()
print(output)
출력:
43
Syed Moiz is an experienced and versatile technical content creator. He is a computer scientist by profession. Having a sound grip on technical areas of programming languages, he is actively contributing to solving programming problems and training fledglings.
LinkedIn