> 백엔드 개발 > 파이썬 튜토리얼 > 변수 접두사가 있는 Python의 목록 이해는 어떻게 작동합니까?

변수 접두사가 있는 Python의 목록 이해는 어떻게 작동합니까?

DDD
풀어 주다: 2024-11-22 02:33:13
원래의
518명이 탐색했습니다.

How Does Python's List Comprehension with a Variable Prefix Work?

변수 접두사가 있는 Python for-in 루프

Python에서는 다음과 같은 코드 조각을 만날 수 있습니다.

foo = [x for x in bar if x.occupants > 1]
로그인 후 복사

이 코드 조각은 다음과 같은 질문을 제기합니다. 이는 무엇을 의미하며 어떻게 작동합니까? 일?

List Comprehension의 이해

문제의 구문을 List Comprehension이라고 합니다. List Comprehension은 일반적으로 해당 요소를 필터링하거나 변환하여 기존 목록을 기반으로 새 목록을 생성하는 간결한 방법입니다.

List Comprehension의 구문 구조

A 목록 이해는 이 일반적인 구문을 따릅니다. 구조:

[expression for item in iterable if condition]
로그인 후 복사

주어진 예 설명

주어진 예에는 다음 요소가 포함됩니다.

  • 표현: x (이것은 새로운 list)
  • 반복 가능: bar(필터링 또는 변환할 목록)
  • 조건: x.occupants > 1(필터 표시줄에 사용)

작동 방식

목록 이해는 목록 표시줄의 각 요소 x를 반복합니다. 각 요소 x에 대해 조건 x.occupants > 1은 참입니다. 조건이 True이면 표현식 x가 평가되어 생성되는 새 목록에 포함됩니다.

For-in 루프와의 비교

목록 이해는 동일합니다. 다음과 같은 전통적인 for-in 루프로:

foo = []
for x in bar:
    if x.occupants > 1:
        foo.append(x)
로그인 후 복사

그러나 목록 이해가 더 간결하고 읽을 수 있습니다.

구문을 이해하는 다른 방법

또는 목록 이해는 두 가지 내장 함수에 대한 지름길로 생각할 수 있습니다.

  • map(function, iterable)은 주어진 함수를 iterable의 각 요소에 적용하여 다음 항목의 목록을 반환합니다. 결과.
  • filter(condition, iterable)는 주어진 조건에 따라 반복 가능한 항목을 필터링하여 조건을 충족하는 요소 목록을 반환합니다.

주어진 예에서 목록 이해 다음과 같습니다:

foo = map(lambda x: x, filter(lambda x: x.occupants > 1, bar))
로그인 후 복사

위 내용은 변수 접두사가 있는 Python의 목록 이해는 어떻게 작동합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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