Checking for Sublist Presence in Python
Determining if a sublist exists within a larger list is a common programming task. Python provides several methods to achieve this, but one particularly useful approach involves utilizing list slicing and a custom function.
Let's consider the following example:
<code class="python">list1 = [1,0,1,1,1,0,0] list2 = [1,0,1,0,1,0,1]</code>
Our goal is to create a function sublistExists(list1, sublist) that returns True if sublist is present in list1 and False otherwise.
The contains_sublist() function below leverages list slicing to perform this check:
<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>
This function works by iterating through lst and checking if any slice of length n (the length of sublst) is equal to sublst. It employs the any() function to stop as soon as a match is found, resulting in an efficient O(m * n) time complexity, where m and n are the lengths of lst and sublst, respectively.
Example Usage:
<code class="python">sublistExists(list1, [1,1,1]) # True sublistExists(list2, [1,1,1]) # False</code>
By implementing this custom function, we can easily check for the presence of a sublist within a larger list in Python.
The above is the detailed content of Here are a few title options, keeping in mind the question format and the content of your article: Short and Direct: * How to Check for Sublist Presence in Python? * Does a Sublist Exist in Python?. For more information, please follow other related articles on the PHP Chinese website!