변경 가능/불변 객체란 무엇인가요? 변수가 변경되면 해당 변수가 가리키는 값은 변경할 수 없으므로 원래 값을 복사한 다음 변경하는 것과 같습니다. 이렇게 하면 새 주소가 열리고 변수는 이 새 주소를 가리킵니다.
Variable object, 이 개체가 가리키는 메모리의 값은 변경될 수 있습니다. 변수(정확하게는 참조)가 변경되면 해당 변수가 참조하는 값이 실제로 직접 변경됩니다. 복사가 발생하지 않고 새 주소가 열리지 않습니다.
Python에서는 숫자 유형(int 및 float), 문자열 str 및 tuple tuple이 모두 불변 유형입니다. 목록, 사전 및 세트는 변수 유형입니다. 코드를 보는 것이 더 직관적입니다.
세트 컬렉션의 코드를 보세요:
abb = {1, 2, 3} acc = abb print(id(abb), id(acc)) acc.add(4) print(abb) # {1, 2, 3, 4} print(id(abb), id(acc)) # 相等
물론 불변객체의 경우는 그렇지 않습니다. 이것과 비교해보시면 됩니다.
abc = 3 dd = abc dd = 43 print(abc) # 3,并不随dd的改变而改变
blist = alist[:] # or alist.copy() print(alist is blist) # False blist.append(4) print(alist) # 还是[1,2 ,3]没有变化
위 내용은 Python의 집합 컬렉션은 변수 유형입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!