programing

할당에 대한 Python ?(조건부/삼진수) 연산자

copysource 2022. 7. 21. 22:18
반응형

할당에 대한 Python ?(조건부/삼진수) 연산자

C 및 기타 많은 언어에는 조건부(AKA 3진수) 연산자가 있습니다.이를 통해 조건의 진실에 따라 두 값 사이에서 매우 간결한 선택을 할 수 있으므로 할당을 포함한 표현이 매우 간결해집니다.

Python에서는 코드에는 4행의 조건부 할당이 많기 때문에 놓치고 있습니다.

if condition:
    var = something
else:
    var = something_else

반면 C에서는 다음과 같습니다.

var = condition ? something : something_else;

파일에 한두 번이라도 좋지만, 조건부 할당이 많으면 행의 수가 폭발적으로 증가하고, 가장 나쁜 것은 눈에 띄는 것입니다.

나는 조건부 연산자의 간결함을 좋아한다. 왜냐하면 그것은 내가 전략적이지 않다고 생각하는 것들이 코드를 스킵할 때 나를 산만하게 하지 않기 때문이다.

그러면 Python에서는 제가 설명한 대로 조건부 연산자의 장점을 대략적으로 파악하기 위해 할당량을 한 줄에 표시하기 위해 사용할 수 있는 요령이 있을까요?

Python에는 다음과 같은 연산자가 있습니다.

variable = something if condition else something_else

또는 권장되지는 않지만(karadoc의 코멘트 참조):

variable = (condition and something) or something_else

이전 Python 코드에서는 다음과 같은 트릭을 볼 수 있습니다.

condition and something or something_else

하지만, 이것은 매우 우월한 사람들에 의해 대체되었다.... if ... else ...구성:

something if condition else something_else

언급URL : https://stackoverflow.com/questions/3091316/python-conditional-ternary-operator-for-assignments

반응형