반복자와 집합을 사용하여 목록 항목 존재 여부 확인
요소 그룹의 항목이 목록에 있는지 확인할 때, 자연스러운 접근 방식은 각 요소를 반복하고 그 존재를 검사하는 것입니다. 하지만 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!