Prüfung auf das Vorhandensein einer Unterliste in Python
Die Feststellung, ob eine Unterliste innerhalb einer größeren Liste vorhanden ist, ist eine häufige Programmieraufgabe. Python bietet mehrere Methoden, um dies zu erreichen, aber ein besonders nützlicher Ansatz besteht in der Verwendung von List Slicing und einer benutzerdefinierten Funktion.
Betrachten wir das folgende Beispiel:
<code class="python">list1 = [1,0,1,1,1,0,0] list2 = [1,0,1,0,1,0,1]</code>
Unser Ziel ist es, eine Funktion zu erstellen sublistExists(list1, sublist), das True zurückgibt, wenn sublist in list1 vorhanden ist, andernfalls False.
Die folgende Funktion enthält_sublist() nutzt das Listen-Slicing, um diese Prüfung durchzuführen:
<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>
Diese Funktion funktioniert, indem es lst durchläuft und prüft, ob ein Abschnitt der Länge n (die Länge von sublst) gleich sublst ist. Es verwendet die Funktion „any()“, um zu stoppen, sobald eine Übereinstimmung gefunden wird, was zu einer effizienten O(m * n)-Zeitkomplexität führt, wobei m und n die Längen von lst bzw. sublst sind.
Beispielverwendung:
<code class="python">sublistExists(list1, [1,1,1]) # True sublistExists(list2, [1,1,1]) # False</code>
Durch die Implementierung dieser benutzerdefinierten Funktion können wir leicht prüfen, ob eine Unterliste innerhalb einer größeren Liste in Python vorhanden ist.
Das obige ist der detaillierte Inhalt vonHier sind einige Titeloptionen unter Berücksichtigung des Fragenformats und des Inhalts Ihres Artikels: Kurz und knapp: * Wie überprüfe ich das Vorhandensein einer Unterliste in Python? * Existiert eine Unterliste in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!