Python mutable, immutable, 클래스 default param, 얕은복사
클래스 내부에 default param을 넣고 싶으면 __init__ 메소드에 넣으면 된다. mutable(가변) : list, dic, set, class immutable(불변) : 숫자, string, tuple None 메소드에 default param 설정할 때 def aaa(data = p[1, 2, 3]): 처럼 mutable object가 들어가면 얕은 복사가 일어난다. taxi2와 taxi3 인스턴스를 만들 때 아무 값도 주지 않아 __init__ 메소드에서 customer = [] 가 사용되었다. 이 때 []는 mutable object(list) 여서 얕은 복사가 일어나 taxi2와 taxi3가 같은 [] 를 가리키게 된다. 출처 https://testspoon.tistory.com/..
2022. 6. 12.