> 백엔드 개발 > 파이썬 튜토리얼 > Python의 다중 할당(x, y = y, x y)이 개별 할당(x = y; y = x y)과 다른 이유는 무엇입니까?

Python의 다중 할당(x, y = y, x y)이 개별 할당(x = y; y = x y)과 다른 이유는 무엇입니까?

Susan Sarandon
풀어 주다: 2024-12-15 17:52:10
원래의
923명이 탐색했습니다.

Why Does Multiple Assignment in Python (x, y = y, x y) Differ from Separate Assignments (x = y; y = x y)?

Python의 다중 할당 및 평가 순서

Python에서 x, y = y, x y와 같은 다중 할당을 활용하는 경우 기본 순서를 이해하는 것이 중요합니다. 평가.

질문:

한 번에 여러 값을 할당할 때 x, y = y, x y가 개별적으로 할당하는 것과 다른 값을 생성하는 이유는 무엇입니까? 즉, x = 와이; y = x y?

답변:

Python에서는 변수 설정이 발생하기 전에 대입문의 오른쪽이 완전히 평가됩니다. 이는 x, y = y, x y에서 다음 단계가 수행됨을 의미합니다.

  1. y는 평가되어 ham으로 저장됩니다.
  2. x y는 평가되어 스팸으로 저장됩니다.
  3. x는 햄으로 설정됩니다.
  4. y는 햄으로 설정됩니다. spam.

실질적으로 다음과 같습니다.

ham = y
spam = x + y
x = ham
y = spam
로그인 후 복사

반면에 x = y; y = x y, 단계는 다음과 같습니다.

  1. y는 x로 설정됩니다.
  2. x y는 y y로 평가되고 y로 설정됩니다.

이 결과 x는 y의 원래 값으로 설정되고 y는 x와 y의 원래 값의 합으로 설정됩니다. y.

위 내용은 Python의 다중 할당(x, y = y, x y)이 개별 할당(x = y; y = x y)과 다른 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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