Python에서 하위 목록이 있는지 확인
더 큰 목록 내에 하위 목록이 있는지 확인하는 것은 일반적인 프로그래밍 작업입니다. Python은 이를 달성하기 위한 여러 가지 방법을 제공하지만 특히 유용한 방법 중 하나는 목록 슬라이싱과 사용자 정의 함수를 활용하는 것입니다.
다음 예를 고려해 보겠습니다.
<code class="python">list1 = [1,0,1,1,1,0,0] list2 = [1,0,1,0,1,0,1]</code>
우리의 목표는 함수를 만드는 것입니다. sublistExists(list1, sublist)는 sublist가 list1에 있으면 True를 반환하고 그렇지 않으면 False를 반환합니다.
아래의 contain_sublist() 함수는 목록 슬라이싱을 활용하여 이 검사를 수행합니다.
<code class="python">def contains_sublist(lst, sublst): n = len(sublst) return any((sublst == lst[i:i+n]) for i in range(len(lst)-n+1))</code>
이 함수 lst를 반복하고 길이 n(sublst의 길이) 조각이 sublst와 같은지 확인하는 방식으로 작동합니다. 일치 항목이 발견되는 즉시 중지하기 위해 any() 함수를 사용하므로 효율적인 O(m * n) 시간 복잡도가 발생합니다. 여기서 m과 n은 각각 lst와 sublst의 길이입니다.
사용 예:
<code class="python">sublistExists(list1, [1,1,1]) # True sublistExists(list2, [1,1,1]) # False</code>
이 사용자 정의 함수를 구현하면 Python의 더 큰 목록 내에 하위 목록이 있는지 쉽게 확인할 수 있습니다.
위 내용은 다음은 질문 형식과 기사 내용을 염두에 두고 몇 가지 제목 옵션입니다. 짧고 직접적인: * Python에서 하위 목록 존재 여부를 확인하는 방법은 무엇입니까? * Python에 하위 목록이 존재합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!