Ich lerne Python und versuche, eine Filmkollektion für meinen eigenen Gebrauch mit web.py zu erstellen.Python - vergleiche zwei Listen
Ich habe zwei Listen
movies_all = ["abc","xyz","opq"]
movies_watched = ["xyz","pqr","cba"]
Was ich will ist druckt alle Zeilen von movies_all in der endgültigen Ausgabe tun. So, wenn es eine Übereinstimmung in der Liste films_watched gibt, geben Sie Ja oder Nein aus. Zum Beispiel ist oben nur "xyz" üblich.
Vorzugsweise sollte die Ausgabe in einem einzigen Datentyp sein, zum Beispiel "Liste der Listen" oder Wörterbuch oder Liste der Tupel usw. Die Ausgabe soll in einer HTML-Tabelle wie der folgenden dargestellt werden.
Ausgang:
================ Movies| Watched | ------|---------| abc |No | xyz |Yes | opq |No |
Die Tabelle in der Ausgabe ist nur für die Lesbarkeit zu verbessern und ist eigentlich nicht erforderlich.
Ich habe dies versucht, aber nicht in der Lage zur Ausgabe gewünschten Ergebnis
matches=[]
print "start comparing"
for item_a in movies_all:
for item_b in movies_watched:
if item_a == item_b:
matches.append(item_a)
matches.append("Yes")
#result=zip(movies_all,matches) -> Tried this but not getting desired output
for i in range(4):
print("%s, %s" % (movies_all[i],matches))
Sie sollten Ihren eigenen Versuch, dies zu kodieren, veröffentlichen, andernfalls wird Ihre Frage downvotes anziehen. Tipp: Um dies effizient zu erreichen, sollte 'movies_watched' ein' set' sein. –
Verwenden Sie die Antwort, die jemand gepostet und dann tun: Importieren Pandas als PD, d = {'Filme': Filme}, df = PD.DataFrame (Daten = d) – sera
@ PM2Ring Danke für die Information, praktisch mein erster Beitrag, fügte meine hinzu gescheiterten Versuch des Codes – Bharat