위에는 간단한 연산자인데, 가끔은 특정 변수에 해당 변수와 특정한 수의 연산을 하여 다시 넣는 경우가 있습니다. 예를 살펴보면 다음과 같습니다.
num1과 num2를 동작시켜보면 동일한 결과가 출력됩니다. 이와 같은 것을 복합 대입 연산자라고 합니다. 복합 대입 연산자는 기본 산술 연산자라면 모든 지원되는 내용입니다.
연산자
의미
x += y
x = x + y
x -= y
x = x - y
x *= y
x = x * y
x /= y
x = x / y
x //= y
x = x // y
x **= y
x = x ** y
x %= y
x = x % y
산술 연산자 우선순위
수학에서도 연산자 우선 순위가 있듯이 Python에서도 우선 순위가 있습니다. 물론 괄호"( )"를 사용하면 헤갈릴 일은 없지만, 간혹 쓰여지지 않는 경우가 있습니다. 이 때에는 연산의 우선 순위에 따라서 진행됨을 기억해야 합니다. 다음은 산술 연산자의 우선순위입니다.
우선순위
연산자
참고
1
( )
괄호 안의 내용을 먼저 계산한다.
2
**
지수승
3
*, /, //, %
곱셈, 나눗셈
4
+, -
덧셈, 뺄
5
=, 복합 대입 연산자
대입 연사자와 복합 대입 연산자
참고! 일반적인 개발에서는 문제가 되지 않으나 Misra, Coverity, Jenkins 등과 같은 코드 검증 도구 등을 이용할 경우에는 연산에서 괄호가 빠진 경우 수정을 요구하기도 합니다. 이는 코드 가독성의 향상과 휴먼 에러(Human Error) 방지를 위합니다.