조건 함수를 사용하여 사전 필터링
데이터 조작 작업에 널리 사용되는 Python 사전은 데이터 기반 정보를 저장하고 검색하는 강력한 방법을 제공합니다. 열쇠에. 그러나 특정 기준에 따라 사전 콘텐츠의 하위 집합을 추출해야 하는 상황이 발생할 수 있습니다. 사전을 필터링하여 x 및 y 좌표가 모두 5보다 작은 점을 선택하는 예를 살펴보겠습니다.
원래 접근 방식
가능한 접근 방식 중 하나는 반복입니다. 사전 항목에 대해 각 점의 좌표를 확인하고 조건에 맞는 항목을 선택합니다. 이 접근 방식은 간단하지만 장황하고 오류가 발생할 수 있습니다.
points = {'a': (3, 4), 'b': (1, 2), 'c': (5, 5), 'd': (3, 3)} points_small = {} for item in [i for i in points.items() if i[1][0] < 5 and i[1][1] < 5]: points_small[item[0]] = item[1]
우아한 솔루션
Python은 dict comprehension을 사용하여 더욱 우아한 솔루션을 제공합니다. Dict comprehension을 사용하면 {k: v for k, v in 기존_dict if 조건} 구문을 사용하여 지정된 조건을 기반으로 새 사전을 생성할 수 있습니다. 우리의 경우 다음 구문을 사용하여 필터링된 사전을 만들 수 있습니다.
{k: v for k, v in points.items() if v[0] < 5 and v[1] < 5}
Python 2 Compatibility
Python 2에서는 iteritems() 메서드가 사용됩니다. 항목() 대신. Python 2의 코드는 다음과 같습니다.
{k: v for k, v in points.iteritems() if v[0] < 5 and v[1] < 5}
이 간결하고 표현력이 풍부한 구문을 사용하면 사전을 쉽게 조작하고 조건에 따라 특정 데이터를 추출할 수 있습니다. Python의 dict comprehension은 사전 내용을 효율적이고 간결하게 필터링하고 변환하기 위한 강력한 도구를 제공합니다.
위 내용은 Python에서 조건 함수를 사용하여 사전을 필터링하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!