변수 접두사가 있는 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를 반복합니다. 각 요소 x에 대해 조건 x.occupants > 1은 참입니다. 조건이 True이면 표현식 x가 평가되어 생성되는 새 목록에 포함됩니다.
For-in 루프와의 비교
목록 이해는 동일합니다. 다음과 같은 전통적인 for-in 루프로:
foo = [] for x in bar: if x.occupants > 1: foo.append(x)
그러나 목록 이해가 더 간결하고 읽을 수 있습니다.
구문을 이해하는 다른 방법
또는 목록 이해는 두 가지 내장 함수에 대한 지름길로 생각할 수 있습니다.
주어진 예에서 목록 이해 다음과 같습니다:
foo = map(lambda x: x, filter(lambda x: x.occupants > 1, bar))
위 내용은 변수 접두사가 있는 Python의 목록 이해는 어떻게 작동합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!