[Python] 음수 제곱 문제

bluejoy·2023년 3월 9일
0

파이썬

목록 보기
3/4

문제

파이썬 문제를 풀다가 이상한 현상을 찾았다.

print(-1**2) # -1 출력

당연히 -1의 제곱이니 1이 나올 것으로 기대했지만 결과는 -1이였다.

원인

출처 : https://docs.python.org/3/reference/expressions.html

연산자 우선 순위에서 **의 우선 순위가 -보다 더 높기에 문제가 발생한 것이였다.


(1)2(-1)^2 이 아니라 (12)-(1^2)로 연산하기 때문에 문제가 발생

해결

(1)2(-1)^2로 해석하도록 괄호를 달아주자.

print((-1)**2) # 1 출력

참고

profile
개발자 지망생입니다.

0개의 댓글