Kleine Sektflaschen Hochzeit
Was ich machen möchte ist mir schon klar. Wie ich es aber formuliere war mir nicht so ganz klar. Trundle Beiträge: 591 Registriert: Dienstag 3. Juli 2007, 16:45 Sonntag 6. Januar 2008, 12:40 kaytec hat geschrieben: Das was du mit 'any' machst, habe ich ja mit der funktion 'vergleiche(liste1):' ja auch gemacht - oder? 2 Listen vergleichen und gleiche(s) Element(e) ausgeben? - Python - easy-coding.de. Nein, deine Funktion `vergleiche' ist, wie BlackJack bereits sagte, einfach nur eine umständliche Art ``liste1[0]'' zu sagen, weil deine Funktion einfach nur immer das erste Element der übergebenen Liste zurückgibt. Mit dem ``return element'' wird die Funktion verlassen. Für immer. Und selbst wenn sie so funktionieren würde, wie du vermutlich gedacht hast, wäre das ja nicht anderes als eine Iteration über eine Liste. Deine `vergleiche' müsste so irgendwie aussehen, damit sie funktioniert: Code: Alles auswählen def vergleiche(liste1): for subelement in element: yield subelement Sonntag 6. Januar 2008, 12:41 Wie schon gesagt: Dein ``vergleiche(liste1)`` ist vom Effekt das gleiche wie ``liste1[0]``.
l1 = [1, 2, 3] l2 = [4, 5, 6] (l2) print l1 Ausgabe: [1, 2, 3, 4, 5, 6] Wenn Sie den __add__ ( +) nicht verwenden können, können Sie die Funktion __add__ verwenden: listone = [1, 2, 3] result = list. __add__(listone, listtwo) print(result) >>> [1, 2, 3, 4, 5, 6] Wenn Sie die Verwendung von dunders gern nicht mögen, dunders Sie dunders den operator import verwenden: import operator listone = [1, 2, 3] result = (listone, listtwo) Man könnte argumentieren, dass dies etwas lesbarer ist. Wenn Sie die beiden Listen in sortierter Form zusammenführen möchten, können Sie die Zusammenführungsfunktion aus der heapq-Bibliothek verwenden. Zwei Listen miteinander vergleichen - Das deutsche Python-Forum. from heapq import merge a = [1, 2, 4] b = [2, 4, 6, 7] print list(merge(a, b)) Wenn Sie zwei geordnete Listen mit komplizierten Sortierungsregeln zusammenführen müssen, müssen Sie sie möglicherweise wie im folgenden Code selbst rollen (mit einer einfachen Sortierregel für Lesbarkeit:-)). list1 = [1, 2, 5] list2 = [2, 3, 4] newlist = [] while list1 and list2: if list1[0] == list2[0]: ((0)) (0) elif list1[0] < list2[0]: else: if list1: (list1) if list2: (list2) assert(newlist == [1, 2, 3, 4, 5]) Wie bereits von vielen gezeigt, ist () der () Weg, wenn man genau dieselbe Behandlung auf beide Listen anwenden muss.
", matches_out(comp_list, user_list) elif count_matches == 1: print "Sie haben eine Zahl", matches_out(comp_list, user_list), "richtig getippt! " elif count_matches == 0: print "Sie haben leider keine Zahl richtig getippt! ", matches_out(comp_list, user_list) Sieht dann auf den Bildschirm so aus: Die Lottozahlen: [3, 8, 22, 30, 31, 40] Ihre Lottozahlen: [1, 2, 3, 4, 5, 6] ****************************************** Es wurde(n) 1 Übereinstimmungen gefunden Sie haben eine Zahl [3] richtig getippt! 5 Python ist schon was nettes Bin auf die nächsten Vorlesungen gespannt 6 "Opa114" wrote: Hast du schonmal folgendes probiert? list3 = list(set3) return list3 Bei mir hats zumindest funktioniert: >>> l1 = [1, 2, 3, 4, 5] >>> l2 = [3, 4, 5, 6, 7] >>> s1 = set(l1) >>> s2 = set(l2) >>> s3 = ersection(s2) >>> l3 = list(s3) >>> print l3 [3, 4, 5] Oder für ganz tippfaule: return list(set(list1). Python zwei listen vergleichen en. intersection(set(list2))) 7 mhh, stimmt, hätte man auch irgendwie drauf kommen können?!! Naja ich werd's bim nächsten Mal bedenken Auf jeden Fall danke für den Hinweis!
intersection(set(b))) Sie können dies auch versuchen, indem Sie gemeinsame Elemente in einer neuen Liste speichern. new_list = [] for element in a: if element in b: (element) Möchten Sie Duplikate? Wenn nicht, sollten Sie stattdessen Sets verwenden: >>> set([1, 2, 3, 4, 5]). intersection(set([9, 8, 7, 6, 5])) Kann auch oduct verwenden.
Du willst wissen was der Mergesort ist und wie er funktioniert? Hier zeigen wir dir eine ausführliche Erklärung mit Hilfe eines Beispiels. Im Anschluss erfährst du, welcher Algorithmus hinter dem Sortierverfahren steckt und wie er als Pseudocode aussehen kann. Danach zeigen wir dir einen Mergesort Java-Code und eine mögliche Implementierung in Python. Am Ende erfährst du alle wichtigen Fakten zur Mergesort Laufzeit und was hinter der Erweiterung " 2-Wege-Mergesort " steckt. Mergesort: Erklärung Der Mergesort gehört zu den stabilen Sortieralgorithmen. Er leitet sich im Allgemeinen vom englischen "merge", also verschmelzen und "sort", dem sortieren ab. Python: Listenelemente vergleichen. Der Sinn dahinter ist einfach nur, dass der Algorithmus die vorhandenen Daten als eine gesamte Liste betrachtet, die er dann in kleinere Listen unterteilt. Man kann also sagen, er zerlegt ein Gesamtproblem in mehrere Teilprobleme und löst diese dann Stück für Stück. Im Endeffekt setzt er sie dann zum Schluss zu einer Gesamtlösung zusammen.
Dadurch können Sie Listen (oder beliebige iterierbare) für die Verarbeitung aneinanderreihen, ohne die Elemente in eine neue Liste zu kopieren: import itertools for item in (listone, listtwo): # do something with each list item Fügen Sie zwei Listen in Python hinzu: >>> a = [1, 2, 3, 4] >>> b = [1, 4, 6, 7] >>> c = a + b >>> c [1, 2, 3, 4, 1, 4, 6, 7] Wenn Sie keine Duplizierung wünschen: >>> a = [1, 2, 3, 4, 5, 6] >>> b = [5, 6, 7, 8] >>> c = list(set(a + b)) [1, 2, 3, 4, 5, 6, 7, 8] Mit Python 3.
Die Funktion gibt einfach nur das erste Element der Liste zurück. Edit: Mist, zu langsam. Dann ist der Name `vergleiche` natürlich sehr irreführend, weil da ja nichts verglichen wird. Sonntag 6. Januar 2008, 13:21 Danke an Alle! ich hatte gedacht bei meiner 'vergleiche' Funktion, die ja nicht wirklich vergleicht, würde die return Anweisung alle Unterlisten zurückgeben. Python zwei listen vergleichen audio. Mit 'any' geht es ja super! gruß frank