> 백엔드 개발 > 파이썬 튜토리얼 > Python에서 목록 'y'를 변경하면 목록 'x'도 변경되는 이유는 무엇입니까?

Python에서 목록 'y'를 변경하면 목록 'x'도 변경되는 이유는 무엇입니까?

WBOY
풀어 주다: 2023-08-20 11:25:14
앞으로
1532명이 탐색했습니다.

Python에서 목록 y를 변경하면 목록 x도 변경되는 이유는 무엇입니까?

이 글에서는 목록을 변경하면 목록 y라고 하면 목록 x도 변경되는지 살펴보겠습니다. 이를 수행하려면 먼저 두 개의 목록이 있는 예를 살펴보고 추가()를 사용하여 출력을 위해 인쇄해 보겠습니다.

으아악

출력

으아악

위에서 목록 y를 업데이트하면 목록 x도 변경된다는 것을 확인했습니다.

위 결과가 나온 이유는 −

  • 목록은 변경 가능합니다. 즉, 목록의 내용을 변경할 수 있습니다.
  • 변수는 객체를 가리키는 이름입니다.

위에서 y = x라고 쓰면 목록의 복사본이 생성되지 않습니다. x가 참조하는 것과 동일한 객체를 참조하는 새 변수 y를 생성합니다. 이는 목록이라는 객체가 하나만 있고 x와 y가 모두 이를 참조한다는 의미입니다.

append()가 호출되면 변수 객체의 내용이 []에서 [25]로 변경됩니다. 두 변수 모두 동일한 개체를 가리키므로 수정된 값은 두 변수 중 하나를 사용하여 액세스할 수 있습니다[25].

불변 객체를 x에 할당한다고 가정하면 x와 y는 더 이상 동일하지 않습니다. 이는 정수가 불변이기 때문입니다 -

Example

의 중국어 번역은 다음과 같습니다:

Example

으아악

출력

으아악

x = x + 1이라고 쓸 때 값을 늘려 int 5를 변경하는 것이 아닙니다. 대신, 새로운 객체(int 6)를 생성하고 이를 x에 할당합니다. 이 할당 후에는 두 개의 개체(int 6 및 5)와 이를 참조하는 두 개의 변수가 있습니다.

그러므로

  • 변경 가능한 개체 − 목록, 사전, 집합 등과 같은 변경 가능한 개체가 있는 경우 특정 작업을 사용하여 이를 변경할 수 있으며 이를 참조하는 모든 변수에 이러한 변경이 적용됩니다.

  • 불변 객체 − str, int, tuple 등과 같은 불변 객체가 있는 경우 이를 참조하는 모든 변수는 항상 동일한 값을 표시하지만 해당 값을 새 값으로 변환하는 작업은 항상 새 객체를 반환합니다. .

위 내용은 Python에서 목록 'y'를 변경하면 목록 'x'도 변경되는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:tutorialspoint.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿