파이썬에서 할당 연산자(Assignment Operator)는 변수에 값을 대입하거나, 기존 값에 연산을 수행한 뒤 그 결과를 다시 변수에 저장할 때 사용됩니다.
변수 a가 10을, 변수 b가 20을 가지고 있다고 가정하고 각 연산자를 살펴보겠습니다.
파이썬 할당 연산자 목록
| 번호 | 연산자 및 설명 | 예시 |
|---|---|---|
| 1 | = (기본 할당) 오른쪽 피연산자의 값을 왼쪽 피연산자에 대입합니다. | c = a + b는 a + b의 결과값을 c에 대입 |
| 2 | += (덧셈 후 할당) 오른쪽 피연산자를 왼쪽 피연산자에 더한 결과를 왼쪽 피연산자에 대입합니다. | c += a는 c = c + a와 동일 |
| 3 | -= (뺄셈 후 할당) 왼쪽 피연산자에서 오른쪽 피연산자를 뺀 결과를 왼쪽 피연산자에 대입합니다. | c -= a는 c = c - a와 동일 |
| 4 | *= (곱셈 후 할당) 두 피연산자를 곱한 결과를 왼쪽 피연산자에 대입합니다. | c *= a는 c = c * a와 동일 |
| 5 | /= (나눗셈 후 할당) 왼쪽 피연산자를 오른쪽 피연산자로 나눈 결과를 왼쪽 피연산자에 대입합니다. (파이썬 3에서는 항상 실수(float)형 결과가 반환됩니다.) | c /= a는 c = c / a와 동일 |
| 6 | %= (나머지 후 할당) 두 피연산자를 나눈 나머지를 구하여 왼쪽 피연산자에 대입합니다. | c %= a는 c = c % a와 동일 |
| 7 | **= (거듭제곱 후 할당) 지수(거듭제곱) 연산을 수행한 결과를 왼쪽 피연산자에 대입합니다. | c **= a는 c = c ** a와 동일 |
| 8 | //= (몫 연산 후 할당) 버림 나눗셈(Floor Division)을 수행한 몫을 왼쪽 피연산자에 대입합니다. | c //= a는 c = c // a와 동일 |
예제 코드
변수 a는 21, 변수 b는 10을 가지고 있다고 가정합니다. 아래 예제는 파이썬 3 기준으로 작성되었습니다.
#!/usr/bin/python3
a = 21
b = 10
c = 0
c = a + b
print("Line 1 - Value of c is", c)
c += a
print("Line 2 - Value of c is", c)
c *= a
print("Line 3 - Value of c is", c)
c /= a
print("Line 4 - Value of c is", c)
c = 2
c %= a
print("Line 5 - Value of c is", c)
c **= a
print("Line 6 - Value of c is", c)
c //= a
print("Line 7 - Value of c is", c)실행 결과
위 프로그램을 실행하면 다음과 같은 결과가 출력됩니다.
Line 1 - Value of c is 31 Line 2 - Value of c is 52 Line 3 - Value of c is 1092 Line 4 - Value of c is 52.0 Line 5 - Value of c is 2 Line 6 - Value of c is 2097152 Line 7 - Value of c is 99864
결과 해설
- Line 1: c = 21 + 10 = 31
- Line 2: c += 21 → 31 + 21 = 52
- Line 3: c *= 21 → 52 × 21 = 1092
- Line 4: c /= 21 → 1092 ÷ 21 = 52.0 (파이썬 3에서는 나눗셈 결과가 실수형으로 반환됩니다.)
- Line 5: c = 2로 초기화한 뒤 c %= 21 → 2 % 21 = 2
- Line 6: c **= 21 → 2²¹ = 2097152
- Line 7: c //= 21 → 2097152 ÷ 21의 몫 = 99864
복합 할당 연산자(+=, *= 등)는 코드를 간결하게 만들어 주므로, 반복문이나 누적 계산 시 특히 유용하게 활용됩니다.