에서 삼항 조건문을 수행하는 나는 파이썬 버전으로 부담해야 < 2.5 (이 특성에 대한 2.4.3이다)가장 좋은 방법은 파이썬 <2.5
삼항 연산자 2.5에서 시작 파이썬에서 소개합니다이었다 보인다. 이 같은 파이썬에서 삼항 연산자> = 2.5보기에 익숙하지 않은 사람들을 위해 :
def do_ternary(flag):
return "foo" if flag else "bar"
파이썬의 초기 버전에서이 문제를 에뮬레이트하는 몇 가지 해결책을 알고 싶습니다. 나는 그걸로 확실히 할 수있다 ... 다른 사람,하지만 좀 더 파이썬 뭔가 생산 수준의 코드를 넣어 부끄럽지 않을 것이라고 찾고 있어요 :)
도와 줘서 고마워!
는
당신의 반대 의견 : "foo"를 반환 else : "bar"를 반환하면 충분히 세련되지 않습니까? 아니면 구체적인 이유가 있습니까? – mfrankli
잘 논리는 괜찮지 만 삼항 연산자가 아닙니다. "세련된"것인지 아닌지에 대한 질문이 아니라 코드 분해 및 코드 작성에 관한 것입니다. 내 코드에 if ... else 문으로 된 전체 트리를 갖고 싶지 않습니다. –
테스트가 사실 일 때 뭔가하고 싶다면,''if ... : ... else : ...''꽤 합리적인 것처럼 보입니다. _terse_와 _readable_를 혼동하지 마십시오. 읽기 가능은 둘 다 할 수 없다면 항상 승리해야합니다. –