>백엔드 개발 >파이썬 튜토리얼 >Python에서 목록 항목 존재 여부를 효율적으로 확인하는 방법은 무엇입니까?

Python에서 목록 항목 존재 여부를 효율적으로 확인하는 방법은 무엇입니까?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-11-14 09:55:02431검색

How to Efficiently Check for List Item Presence in Python?

반복자와 집합을 사용하여 목록 항목 존재 여부 확인

요소 그룹의 항목이 목록에 있는지 확인할 때, 자연스러운 접근 방식은 각 요소를 반복하고 그 존재를 검사하는 것입니다. 하지만 Python은 이 작업을 위해 명시적 함수를 작성하는 것보다 더 효율적인 방법을 제공합니다.

일반적인 접근 방식에는 'or'와 같은 논리 연산자가 포함되지만, 예제에서 보여주듯이 이는 Python의 진실성으로 인해 예상치 못한 결과를 초래할 수 있습니다. 평가 메커니즘.

이해력을 활용하는 것이 선호되는 방법입니다. 예를 들어, 다음 코드는 L1의 항목을 반복하고 L2에 존재하는 항목만 필터링하여 새 목록을 생성합니다.

L1 = [2,3,4]
L2 = [1,2]
[i for i in L1 if i in L2]

이는 공통 요소가 포함된 목록을 반환하며, 없는 경우 비어 있을 수 있습니다. 일치하는 항목이 발견되었습니다. 비어 있지 않은 목록이 반환되면 그룹에 하나 이상의 항목이 있는 것입니다.

또 다른 접근 방식은 집합을 활용하는 것입니다. 세트는 Python에서 순서가 지정되지 않은 컬렉션이며 요소의 존재를 확인하는 효율적인 방법을 제공합니다. 먼저 set() 함수를 사용하여 L1과 L2를 집합으로 변환합니다.

S1 = set(L1)
S2 = set(L2)

그런 다음 Intersection() 메서드를 사용하여 교차점을 찾습니다.

S1.intersection(S2)

결과는 다음과 같습니다. 공통 요소를 포함하는 집합입니다. 빈 세트는 False로 평가되므로 결과를 진리값으로 직접 사용하여 그룹에 항목이 있는지 확인할 수 있습니다.

위 내용은 Python에서 목록 항목 존재 여부를 효율적으로 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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