Ich glaube, ich könnte immer löschen Sie die höher nummerierten Elemente erste, aber ich hoffe es gibt einen besseren Weg. In der Tat, Mark, du bist mürrisch. Ich mag diese Lösung, aber es wird natürlich davon ausgegangen, dass Ihre Liste keine Duplikate enthält. Die Einfachsten hiervon sind wohl das Schlüsselwort del, welches man einfach vor dem Element, das man löschen möchte, angeben kann oder die Methode remove mit der man Werte direkt aus einer Liste löschen kann. Andere Beispiele. Ich kann dort keinen Beweis für eine "verknüpfte Liste" sehen. [start:stop:step]Wenn Sie den Bereich im Slice auf diese Weise festlegen und einen inkrementellen Schritt angeben, können Sie mehrere springende Elemente auf einmal löschen. Einfachen code, der nur zu erklären, es by doing: Einen Weg zu "konvertieren" eine Liste in ein dict ist: Ja, ich denke, es ist besser, zu starten, löschen aus den höheren index, wie Sie sagte. Neben der Einführung von Wissen möchte ich auch eine konkrete Methodik schreiben, wie dieses Wissen in unserem Leben genutzt werden kann. Wie sind Python-Listen aufgebaut? Wenn ich die zu löschenden Elemente mit dem index 0 und 2, und versuchen Sie so etwas wie del somelist[0], gefolgt von del somelist[2] die zweite Anweisung wirklich löschen somelist[3]. Wenn das Argument weggelassen und keine Position angegeben wird, wird das Element am Ende (zuletzt) gelöscht. Pop druckt das Mitglied, das aus der Liste entfernt wird, während die Liste dieses Mitglied löscht, ohne es zu drucken. Du kannst auch sagen del a[2:10] mit gleichem Effekt. Sie müssen keine Elemente im Array über die neue Länge hinaus berücksichtigen. Zum Beispiel. Lerne von echten Experten durch echte Praxisprojekte und mit Sie können auch die verwenden del -Anweisung, um den Inhalt einer ganzen Liste zu löschen. Meine Hobbys sind das Lesen von wissenschaftlichen Forschungsarbeiten und das Anwenden des Wissens, das ich in meinem Leben gewonnen habe. Verwenden Sie die Methode List.pop() in Python; 3. Zum Beispiel löscht del a die gesamte Liste, Ein weiteres Beispiel del a [2: 4] löscht die Elemente 2 und 3. pop () gibt das Element zurück, das Sie entfernen möchten. Kommt mit der Einschränkung, dass Ihre Liste keine Duplikate enthalten kann. Streng genommen gibt die, @smci: keine praktische Umsetzung Python verwenden würde, @JFSebastian: natürlich. Scheint dies mehr lesbar für mich. (Vielleicht würde ich anders fühlen, wenn ich war in der Gewohnheit, mit auflisten.) 1. Beispiel 5: Wenn der Index der Elemente bekannt ist. list.remove () oder list.pop () Funktionen oder die eingebaute del Anweisung. Bei der Verwendung mit Objekten muss die __getitem__Methode definiert worden sein, und was noch wichtiger ist, die __add__Methode muss definiert worden sein, um ein Objekt zurückzugeben, das Elemente aus beiden Operanden enthält. Pop (-1) nicht vergessen. RIESIGE Bonuspunkte für diese Lösung im Vergleich zu den anderen für die Geschwindigkeit. Bei der Verwendung von UUIDs, sollte ich auch mit AUTO_INCREMENT? Folgen Sie diesem Link NICHT, sonst werden Sie von der Seite ausgeschlossen. Doppelte Elemente in der sortierten Liste II löschen, Statistikmethode für die Anzahl der gleichen Elemente in der Python-Liste, Python-Liste Elemente keine Art, obwohl mit Datenrahmen Elementen gefüllt, Python - Löschen (Beibehalten) anderer Elemente außer Buchstaben und Zahlen in einer Zeichenfolge. Welche Version von Python hat eine Funktion. Was sind Python Lists? HINWEIS: Python-2.7-syntax. Import nur aus diesem Grund wäre des guten zuviel, aber wenn Sie geschehen, werden mit pandas sowieso, dann ist die Lösung ist einfach und unkompliziert: InformationsquelleAutor der Antwort Lorinc Nyitrai, InformationsquelleAutor der Antwort raghu. jsdoc/newline-after-description, So beheben Sie den Fehler 500 in admin-ajax.php WordPress, Die Sortierung nach „post__in“ führt nicht zur korrekten Reihenfolge. Verwenden Sie Array (Standardbibliothek) oder NumPy, wenn Sie Arrays für Prozesse verwenden möchten, die Speichergröße oder Speicheradresse erfordern, oder für numerische Berechnungen von großen Daten. es besteht die Annahme kann entweder eine Ganzzahl oder eine Scheibe. Je nach bedingtem Ausdruck ist eine Vielzahl von Verarbeitungen möglich. By continuing, you consent to our use of cookies and other tracking technologies and Lösung: 3. @SilentGhost Nicht erforderlich, um eine Aufzählung zu erstellen. Daher wird immer empfohlen, zuerst die größten Indizes zu löschen. @smci Wenn Sie das allgemein ansprechen, bin ich mir nicht sicher, wie Sie hoffen können, etwas zu optimieren. Wenn die Elemente, die in val und valueToBeRemoved vorhanden sind, nicht gleich sind, werden nur die Elemente, die in val vorhanden sind, der neuen Variablen result hinzugefügt. In einem dict-Sie hängen nur auf der index. Da nach dem Löschen des zweiten Elements das dritte Element, das Sie löschen, tatsächlich das vierte Element in der ursprünglichen Liste ist. Als für die Leistung wie die Größe der Liste Waage, ich bin sicher, dass meine Lösung ist sub-optimal. In diesem Beispiel haben Sie eine Liste myList, aus der Sie das Vorkommen von 1 entfernen wollen. Es ist auch möglich, den gesamten Bereich anzugeben und alle Elemente zu löschen. Es ist im Grunde das gleiche wie die top-stimmten Antwort, nur ein anderer Weg, es zu schreiben. Im obigen Code haben Sie eine Liste myList erstellt, und dann haben Sie eine Variable valueToBeRemoved, die das Element enthält, dessen Vorkommen Sie aus der Liste entfernen wollen, in diesem Fall 1. In diesem Fall durchlaufen wir alle Listenelemente l1 und entfernen ein Element mit der Methode remove() aus der Liste, wenn das Element einen ungeraden Wert hat. Mit anderen Worten, leeren oder löschen Sie eine Liste in Python. In diesem Fall, die position des nächsten element zu löschen, kompensiert werden, indem aber viele die zuvor gelöscht wurden. "List after deleting all values which are odd : ", Original list : [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20], List after removing all the odd values : [2, 4, 6, 8, 10, 20], "List after deleting all the odd values present in List : ", Original List : [2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 80, 99], List after deleting all the odd values present in List : [2, 4, 6, 8, 10, 20, 80], "List after removing values at index 2, 3 and 4 : ", List after removing values at index 2, 3 and 4 : [1, 2, 6, 7, 8, 9, 10, 20, 80, 99], "List after removing values at index 0, 2 and 5: ", List after removing values at index 0, 2 and 5: [3, 5, 6, 8, 9, 10, 20, 80, 99], Entfernen mehrerer Elemente aus einer Liste mithilfe von, Löschen mehrerer Elemente aus einer Liste mit der List Comprehensionsmethode in Python, Entfernen mehrerer Elemente aus einer Liste mit List Slicing, Entfernen Sie mehrere Elemente aus einer Liste mit der, Alle Vorkommen eines Elements aus einer Liste in Python entfernen, Konvertieren eines Dictionaries in eine Liste in Python, Wie erhält man den Durchschnitt einer Liste in Python, Was ist der Unterschied zwischen den Listenmethoden append und extend, Wie man eine Liste in Python in eine Zeichenkette konvertiert. @ rvraghav93 Von allen vorgestellten Methoden während des gesamten Beitrags war der. Sahil is a full-stack developer who loves to build software. affirm you're at least 16 years old or have consent from a parent or guardian. Ja, Sie funktionieren, aber genaugenommen sind die meisten von Ihnen sind nicht das löschen von Elementen in einer Liste sind Sie? Läuft ein n Protokoll (n) Zeit, was es zur bisher schnellsten richtigen Lösung machen sollte. Auch wenn der Wert eines Elements derselbe sein kann wie der der anderen, hat jedes Element einen anderen Index. Stattdessen werden zwei Kopien von Listen erstellt (eine vom Anfang bis zum Index, jedoch ohne ( a[:index]) und eine nach dem Index bis zum letzten Element ( a[index+1:])) und ein neues Listenobjekt erstellt, indem beide hinzugefügt werden. Für Python 3, xrange => range. svn.python.org/projects/python/trunk/Objects/listobject.c an. Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig. Es ist wirklich einfach. Es tut uns leid, dass dieser Beitrag für Sie nicht hilfreich war! Die Version mit args.sort().reverse() ist definitiv besser. Wenn Sie alle Vorkommen eines Elements mit der Funktion remove() entfernen möchten, können Sie eine Schleife verwenden, entweder eine for-Schleife oder eine while-Schleife. (Aber kopieren und dann ersetzen Sie das original mit der bearbeiteten Kopie). Sie können verwenden numpy.delete folgendermaßen: Wenn es Ihnen nichts ausmacht, mit a zu enden numpy Array am Ende können Sie weglassen .tolist(). Vielen Dank an @MarkDickinson für diesen Hinweis ... Diese Antwort zum Stapelüberlauf erläutert das Konzept des Schneidens. Hier können wir den Bereich des Elements vom Anfang bis zum letzten Index des Elements, das wir aus der Liste entfernen möchten, in die Methode del setzen. Python-Liste Add Liste, löschen Sie die Liste, um eine Liste der am häufigsten verwendeten Methoden usw. Man kann entweder del oder pop verwenden, aber ich bevorzuge del, da Sie Index und Slices angeben können, um dem Benutzer mehr Kontrolle über die Daten zu geben. Als Spezialisierung von Greg Antwort, Sie können sogar erweiterte slice-syntax. Durchschnittliche Bewertung 4.31/5. @SilentGhost Nicht erforderlich, um eine Aufzählung zu erstellen. @ R. Pate: Aus diesem Grund habe ich die erste Version entfernt. Das Ergebnis nach dem Entfernen stimmt nicht mit dem Ergebnis der obigen Methode überein.Der Hauptgrund ist das Problem wiederholter Werte, a[3]=1, a[0]=1, sodass nach dem Entfernen von Element 4 die ursprüngliche Liste zu [1 , 2, 1, 5, 6, 9, 0]. Problemhintergrund: Löschen Sie das Element in der Liste, seine Position ist [1,3,7]. popist auch nützlich, um ein Element zu entfernen und aus einer Liste zu behalten. Das alte Listenobjekt wird daher dereferenziert und somit Müll gesammelt (vorausgesetzt, das ursprüngliche Listenobjekt wird von keiner anderen Variablen als a referenziert). B. einer Var... Um Befehlszeilenargumente in Python zu behandeln, verwenden Sie die argv- oder argparse-Module des sys-Moduls.Das argpar... Um die Elemente eines Python-Wörterbuchobjekts mit einer for-Anweisung in einer Schleife zu durchlaufen, verwenden Sie d... Mischen von Elementen in einer Liste in Python, Hinzufügen von Elementen zu einer Liste (Array) in Python: append(), extend(), insert(), Berechnung von trigonometrischen Funktionen in Python (sin, cos, tan, arcsin, arccos, arctan), Berechnung von exponentiellen und logarithmischen Funktionen in Python (exp, log, log10, log2), Berechnen und Erzeugen von Faktoren, Permutationen und Kombinationen in Python, Schreiben von if-Anweisungen in einer Zeile mit dem ternären Operator von Python (Bedingungsoperator), Wie man bedingte Verzweigungen mit if-Anweisungen in Python schreibt, Löscht ein Element an der angegebenen Position und ermittelt seinen Wert. Ich bin ein totaler Anfänger in Python, und meine Programmierung im moment ist roh und schmutzig, um das Mindeste zu sagen, aber meine Lösung war die Verwendung einer Kombination der grundlegenden Befehle, die ich gelernt, in den frühen tutorials: Offensichtlich, weil der mit zu wählen "markieren-löschen" Charakter, dieser hat seine Grenzen. Sehen Sie sich unter. Beachten Sie auch, dass dies nur mit positiven Indizes funktioniert. Löscht ein Element an der angegebenen Position und ermittelt seinen Wert. Und del ist etwas schneller, dann pop. Wenn Sie einen Bereich mit Slices angeben, können Sie mehrere Elemente auf einmal löschen. Anstatt einen einzelnen Index in der Methode del zu verwenden, verwenden wir einen Wertebereich vom Anfang bis zum letzten Index der Elemente, die wir aus der Liste entfernen möchten. Brauchst Du umbedingt das selbe Listenobjekt? zB. Wenn Sie die Etymologie des Programmierers von "Pop" kennen (es ist die Operation, die den, Ihre Slicing-Methode entfernt kein Element aus einer Liste. Doppelzeigermethode (schnelle und langsame Zeigermethode): Vervollständigen Sie die Arbeit von zwei for-Schleifen unter einer for-Schleife durch einen schnellen Zeiger und einen langsamen Zeiger . Sucht man nach Synonymen von dem Wort „Methode" stößt man auf „Vorgehen, Arbeitsweise und Handhabung". Auf der folgenden Seite des offiziellen Wikis finden Sie Informationen zur Komplexität verschiedener Operationen auf Listen.O(n). Vielleicht war die Antwort nicht ganz thematisch, aber die Indizierungsmethode ist nützlich, wenn Sie ein Element aus einem unveränderlichen Objekt wie einem Tupel weglassen müssen. Beispiel 1: Angenommen, wir möchten jedes Element in der Liste löschen, das durch 2 oder alle geraden Zahlen teilbar ist. Es scheint, als würde das Standard-Entfernen die Liste durchsuchen, aber ich möchte nicht, dass eine Suche durchgeführt wird. In diesem Fall können wir diese Elemente direkt entfernen, ohne uns um die Indizes zu kümmern, die wir im nächsten Beispiel sehen werden. Mit append ; Mit extend ; Mit insert ; Elemente aus einer Python-Liste löschen . In der Notation des Listenverständnisses wird eine neue Liste erstellt. Löschen von Elementen aus Listen Es gibt einige Möglichkeiten, Elemente aus Listen zu löschen. Am Ende haben Sie eine Liste, die die gewünschte Ausgabe enthält, die Sie haben wollen. Beachten Sie, dass Ihr wichtig die to_delete sind die Indizes in aufsteigender Reihenfolge, sonst funktioniert es nicht. Obwohl Indizes von Elementen bekannt sind, werden durch zufälliges Löschen der Elemente die Werte von Indizes geändert. "lst" is not modified. Auch wenn der Wert eines Elements derselbe sein kann wie der der anderen, hat jedes Element einen anderen Index. Löschen Sie die doppelten Elemente in der sortierten verknüpften Liste, leetcode-83. LeetCode-Link Wenn Sie ein Array nums und einen Wert val haben, müssen Sie alle Elemente entfernen, deren Wert gleich val ist, und die neue Länge des entfernten Arrays zurückgeben. Mit anderen Worten, wir können sagen, dass wir eine neue Liste l2 aus der bestehenden Liste l1 erstellt haben, indem wir alle ungeraden Werte in der Liste l1 entfernt haben. Verwenden delund geben Sie den Index des Elements an, das Sie löschen möchten: Standardmäßig wird popohne Argumente das letzte Element entfernt: Wie bereits erwähnt, sind Pop und Del die effiziente Möglichkeit, ein Element eines bestimmten Index zu entfernen. Ein negativer Wert kann auch verwendet werden, um die Position vom Ende (letzten) aus anzugeben. Es entfernt die Werte an den Indizes 2, 3 und 4 aus der Liste l1 mit der Methode del. Sie können die gesamte Liste löschen, indem Sie dem Slice eine leere Liste zuweisen, dh a[:] = []. Verwenden del und geben Sie den Index des Elements an, das Sie löschen möchten: >>> a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> del a[-1] >>> a [0, 1, 2, 3, 4, 5, 6, 7, 8] Unterstützt auch Slices: >>> del a[2:4] >>> a [0, 1, 4, 5, 6, 7, 8, 9] Hier ist der Abschnitt aus dem Tutorial.