할당 표현식은 무엇이며 Python에서 어떻게 작동합니까?

Susan Sarandon
풀어 주다: 2024-10-30 21:42:30
원래의
180명이 탐색했습니다.

What are Assignment Expressions and How Do They Work in Python?

Python의 할당 표현식: "Walrus" 연산자(=:)

Python 3.8에 도입된 "Walrus" 연산자(:=)를 활용하는 할당 표현식은 다음을 제공합니다. 상당한 언어 향상으로 컴프리헨션과 람다 내에서 할당이 가능해졌습니다.

구문 및 의미

할당 표현식은 name := expr 형식의 명명된 표현식입니다. 여기서 name은 식별자이고 expr은 유효한 표현. 표현식은 expr 값으로 평가되는 동시에 해당 값을 name에 할당합니다.

소개 이유

할당 표현식을 추가하는 주요 동기는 다음과 같습니다.

  • 목록 이해 및 람다와 같이 기존 할당이 금지된 상황에서 할당을 허용합니다.
  • 쉬운 값 할당을 촉진하여 대화형 디버깅을 강화합니다.

사용 예

a) 조건부 값 얻기

대신:

<code class="python">command = input("> ")
while command != "quit":
    print("You entered:", command)
    command = input("> ")</code>
로그인 후 복사

대입 표현식에서는 다음을 허용합니다:

<code class="python">while (command := input("> ")) != "quit":
    print("You entered:", command)</code>
로그인 후 복사

b) 목록 이해 단순화

예:

<code class="python">[(lambda y: [y, x/y])(x+1) for x in range(5)]</code>
로그인 후 복사

다음으로 단순화할 수 있습니다.

<code class="python">[[y := x+1, x/y] for x in range(5)]</code>
로그인 후 복사

정규 과제와의 주요 차이점

과제 표현식은 일반 과제와 다릅니다. 여러 측면에서 할당:

  • 오른쪽에서 왼쪽으로 평가됩니다.
  • 쉼표와는 우선순위가 다릅니다.
  • 여러 대상을 지원하지 않습니다. 단일이 아닌 이름에 대한 할당 또는 반복 가능한 패킹/패킹 해제.
  • 인라인 유형 주석 및 증강 할당도 지원되지 않습니다.

위 내용은 할당 표현식은 무엇이며 Python에서 어떻게 작동합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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