더북(TheBook)

큰 표현식이 일으킬 수 있는 또 다른 문제는 평가 순서가 예상한 것과 다를 수 있다는 것이다. 예를 들어 수식 x2π를 파이썬으로 변환한다면 다음과 같이 작성하기 쉽다.

y = x / 2 * math.pi

그러나 곱셈과 나눗셈은 같은 우선순위를 갖고 있으며 왼쪽에서 오른쪽으로 평가되므로 이 코드는 올바르지 않다. 즉, 이 표현식은 /2를 계산하게 된다.

표현식의 버그를 잡는 좋은 방법은 괄호를 넣어 평가 순서를 명확하게 정하는 것이다.

y = x / (2 * math.pi)

평가 순서를 확신할 수 없을 때마다 괄호를 사용하자. 괄호를 사용하면 (의도한 대로 동작한다는 의미에서) 프로그램이 올바르게 동작하게 할 뿐 아니라 연산 순서를 기억하지 못하는 다른 사람들도 프로그램을 더 쉽게 읽게 해준다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.