>백엔드 개발 >파이썬 튜토리얼 >할당 표현식은 무엇이며 Python에서 어떻게 작동합니까?

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

Susan Sarandon
Susan Sarandon원래의
2024-10-30 21:42:30295검색

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.