더북(TheBook)

레몬은 신맛이 강하기 때문에 레모네이드에는 레몬을 하나만 쓴다. 따라서 0이 아닌지 검사하는 것으로 충분하다. 하지만 고객이 사과 주스를 주문한다면 사과가 최소 네 개는 필요하다. 다음 코드에서는 fruit_basket 딕셔너리에서 count를 가져와 if 문의 조건식에서 비교를 수행한다.

def make_cider(count):
    ...

count = fresh_fruit.get('사과', 0)
if count >= 4:
    make_cider(count)
else:
    out_of_stock()

이 코드도 레모네이드의 첫 번째 예제와 마찬가지로 count 대입이 변수를 쓸데없이 너무 강조한다. 이 코드를 왈러스 연산자를 사용해 다음과 같이 더 명확하게 쓸 수 있다.

if (count := fresh_fruit.get('사과', 0)) >= 4:
    make_cider(count)
else:
    out_of_stock()
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.