파이썬에서 a=b처럼 객체를 할당하면 "객체의 참조(Reference)를 공유"
- 가변 객체 (Mutable Object)인 경우, b를 변경하면 a값도 바뀔 수 있음
- 불변 객체 (Immutable Object)에서는 b를 바꾸더라도, a는 영향을 받지 않음
1. 가변객체 (Mutable Object)
참조가 공유되므로 하나를 변경하면 다른 것도 영향을 받음
ex) 리스트, 딕셔너리, 집합(set)
a = [1, 2, 3]
b = a # a와 b는 같은 리스트 객체를 참조
b[0] = 100
print(a) # [100, 2, 3]
print(b) # [100, 2, 3]
2. 불변객체 (Immutable Object)
새 값을 할당하면 참조가 변경되기 때문에 기존 객체에 영향이 없음
ex) 정수, 실수, 문자열, 튜플
a = 10
b = a # a와 b는 10이라는 값을 참조
b = 20 # b가 새로운 객체를 참조
print(a) # 10
print(b) # 20'Algorithm > 알고리즘' 카테고리의 다른 글
| [Python] 기간이 겹치지 않도록 하면서 최대 보수를 얻는 아르바이트 조합 찾기 (0) | 2024.10.27 |
|---|---|
| [프로그래머스] 첫 번째로 나오는 음수 (Python3) (1) | 2024.08.28 |
| [Python] enumerate() 내장 함수 (0) | 2024.08.28 |
| [프로그래머스] 순서 바꾸기 (Python3) (0) | 2024.08.28 |
| [프로그래머스] 배열 두 배 만들기 (Python3) (0) | 2024.08.28 |