더북(TheBook)

파이썬에는 코드를 간결하게 유지하면서 이런 경우를 명확하게 표현할 수 있는 if/else 조건식(또는 삼항 조건식)이 있다.

red_str = my_values.get('빨강', [''])
red = int(red_str[0]) if red_str[0] else 0

이 코드가 더 좋다. 또한, 덜 복잡한 경우라면 if/else 조건식이 코드를 아주 명확하게 해줄 것이다. 하지만 앞의 예제는 다음과 같이 여러 줄로 나눠 쓴 완전한 if/else 문보다는 아직 덜 명확하다. 모든 로직을 분리한 다음 코드를 살펴보면, 이전에 본 농축된 버전이 더 복잡해 보이기까지 한다.

green_str = my_values.get('초록', [''])
if green_str[0]:
    green = int(green_str[0])
else:
    green = 0
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.