Python에서 목록에 하위 목록 존재 검색
더 큰 목록 내에서 하위 목록이 있는지 식별하는 것은 일반적인 프로그래밍 작업입니다. Python은 사용자 정의 함수를 사용하여 이 문제에 대한 간단한 솔루션을 제공합니다.
문제 공식화:
두 개의 목록 list1과 list2가 주어지면 list2의 요소가 다음과 같이 존재하는지 확인합니다. list1 내의 연속 시퀀스. 다음 테스트 사례를 고려하십시오.
<code class="python">list1 = [1,0,1,1,1,0,0] list2 = [1,0,1,0,1,0,1] # Should return True sublistExists(list1, [1,1,1]) # Should return False sublistExists(list2, [1,1,1])</code>
구현:
Python의 함수형 프로그래밍 기능은 any() 함수와 목록 이해를 사용하여 간결한 솔루션을 허용합니다.
<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(메인 목록)와 sublst(검색할 하위 목록)라는 두 가지 인수를 사용합니다. sublst의 길이를 계산하고 목록 이해를 사용하여 lst 내의 인덱스 범위 시퀀스를 생성합니다. 각 범위에 대해 sublst를 lst의 해당 요소와 비교합니다. 일치하는 항목이 발견되면 any()는 True를 반환합니다. 그렇지 않으면 False를 반환합니다.
사용 예:
제공된 테스트 사례에서 sublistExists(list1, [1,1,1])는 True를 반환하고 sublistExists( list2, [1,1,1])은 예상대로 False를 반환합니다.
참고:
any() 함수는 첫 번째 일치 항목을 종료하여 검색을 최적화합니다. . 이 함수의 시간 복잡도는 O(m*n)입니다. 여기서 m은 lst의 길이이고 n은 sublst의 길이입니다.
위 내용은 Python의 더 큰 목록 내에서 하위 목록의 존재를 어떻게 효율적으로 확인할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

Python은 웹 개발, 데이터 과학, 기계 학습, 자동화 및 스크립팅 분야에서 널리 사용됩니다. 1) 웹 개발에서 Django 및 Flask 프레임 워크는 개발 프로세스를 단순화합니다. 2) 데이터 과학 및 기계 학습 분야에서 Numpy, Pandas, Scikit-Learn 및 Tensorflow 라이브러리는 강력한 지원을 제공합니다. 3) 자동화 및 스크립팅 측면에서 Python은 자동화 된 테스트 및 시스템 관리와 같은 작업에 적합합니다.

2 시간 이내에 파이썬의 기본 사항을 배울 수 있습니다. 1. 변수 및 데이터 유형을 배우십시오. 이를 통해 간단한 파이썬 프로그램 작성을 시작하는 데 도움이됩니다.

10 시간 이내에 컴퓨터 초보자 프로그래밍 기본 사항을 가르치는 방법은 무엇입니까? 컴퓨터 초보자에게 프로그래밍 지식을 가르치는 데 10 시간 밖에 걸리지 않는다면 무엇을 가르치기로 선택 하시겠습니까?

Fiddlerevery Where를 사용할 때 Man-in-the-Middle Reading에 Fiddlereverywhere를 사용할 때 감지되는 방법 ...

Python 3.6에 피클 파일로드 3.6 환경 보고서 오류 : modulenotfounderror : nomodulename ...

경치 좋은 스팟 댓글 분석에서 Jieba Word 세분화 문제를 해결하는 방법은 무엇입니까? 경치가 좋은 스팟 댓글 및 분석을 수행 할 때 종종 Jieba Word 세분화 도구를 사용하여 텍스트를 처리합니다 ...

정규 표현식을 사용하여 첫 번째 닫힌 태그와 정지와 일치하는 방법은 무엇입니까? HTML 또는 기타 마크 업 언어를 다룰 때는 정규 표현식이 종종 필요합니다.

Investing.com의 크롤링 전략 이해 많은 사람들이 종종 Investing.com (https://cn.investing.com/news/latest-news)에서 뉴스 데이터를 크롤링하려고합니다.


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

Atom Editor Mac 버전 다운로드
가장 인기 있는 오픈 소스 편집기

SublimeText3 영어 버전
권장 사항: Win 버전, 코드 프롬프트 지원!

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

뜨거운 주제



