IT

물론?

lottoking 2020. 9. 9. 08:16
반응형

물론? (조건부 / 삼진) 할당 연산자 [중복]


이 질문에 이미 답변이 있습니다.

C 및 기타 여러 언어에는 조건부 (삼항) 연산자가 있습니다. 이를 통해 조건의 진실을 기반으로 두 값 사이에서 매우 간결한 선택을 할 수 있으므로 할당을 모두 표현이 매우 간결 해집니다.

내 코드에는 Python에서 네 줄을 사용하는 많은 조건부 할당이 있기 때문에 놓친다.

if condition:
    var = something
else:
    var = something_else

반면 C에서는 다음과 가변합니다.

var = condition? something: something_else;

파일에서 한두 번은 괜찮지 만 조건부 할당이 많으면 줄 수가 폭발하고 최악의 경우 눈이 끌립니다.

조건부 연산자의 간결함이 마음에. 왜냐하면 비 전략적이라고 생각되는 것들이 코드를 훑어 볼 때 방해가되지 않기 때문입니다.

그래서, 다수 존재하는 조건 연산자의 장점을 풍부하게 설명하기 위해 한 줄로 할당하는 데 사용할 수있는 트릭이 있습니까?


지금은 다음과 같은 연산자가 있습니다.

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

반응형