Ich versuche, eine Reihe früherer Benutzernamen in einem Spiel zu suchen, nach dem Benutzernamen, der derzeit vom Spieler verwendet wird (damit alle vorherigen Spielstände unter dem Benutzernamen angezeigt werden). Diese Liste wurde aus einer externen Textdatei importiert.Suche nach Elementen einer Liste
Hier könnte zum Beispiel der Benutzername "Jack" sein. Auch wenn mehrere Elemente in lis den Wert "Jack" haben (verifiziert, indem alle Werte der Liste über "print lis [x]" gedruckt werden), wird "ja" niemals gedruckt, um dies anzuzeigen.
Was läuft falsch?
Versuchen Sie, die Rohwerte der Liste zu drucken; Wenn es aus einer Datei gelesen wird, besteht eine gute Chance, dass Sie 'Jack' mit' Jack \ n' vergleichen und das wird natürlich nicht passen. –
Versuchen Sie, lis [x] .strip() aufzurufen, um den nachfolgenden Newline/Whitespace loszuwerden – rassar
(sidenote) Sie können überprüfen, ob ein Objekt in einer Liste einfacher ist mit dem In-Schlüsselwort: 'if username in lis: print (" ja ")". Auch, wenn Sie planen, für diese Art von Sache viele Male zu überprüfen, ziehen Sie in Betracht, ein Set zu verwenden. – Bendik