Ich habe eine Funktion definiert, mit der ich ein bestimmtes Zeichen in einem Parameter finden und alle nachfolgenden Zeichen zurückgeben kann. Beispiel:Eine Liste durch eine "find" -Funktion übergeben = Fehler?
def function1(parameter1):
variable1 = parameter1[parameter1.find("&"):]
variable1 = variable1[1:]
return variable1
Dies scheint ohne Problem auszuführen. Aber ich habe ein Problem mit meiner zweiten Funktion, die mir eine Liste durch die erste Funktion zu übergeben kann, vergleichen, und das Rück Wahr oder Falsch
def function2(list, variable1):
for parameter1 in list:
parameter1 = function1(list)
if variable1 == parameter1:
return True
else:
return False
Dann definiere ich meine Liste und variable1 zu für function2 und Drucken:
list = ["abc&123", "def&456", "ghi&789"]
variable1 = "123"
print function2(list,variable1)
Ich kann nicht scheinen, herauszufinden, was ich falsch gemacht habe. Irgendwie scheint es so zu sein, dass ich nicht weiß, wie ich die Liste durchlaufe, was zu Fehlern beim Teilen oder Finden führt (ich habe beides versucht) und/oder bei meinem Vergleich von Variable1 und Parameter1. Ich bin mir sicher, dass es hier ein kleines Problem gibt, das mich immer wieder stolpern lässt, aber für das Leben von mir kann ich es nicht herausfinden.
Hinweis: Sie keine Variable 'list' nennen wie Sie' list' sind Shadowing gebautet, oder besser nicht geben Ihre Variablen/Funktionsnamen aus [\ [Python \]: Built-in-Funktionen] (https://docs.python.org/3/library/functions.html). – CristiFati
Das war schlechte Formatierung meinerseits, soweit die Post geht. Im eigentlichen Code habe ich meine Variable "list" nicht benannt. Ich habe versucht, die Dinge so prägnant wie möglich zu halten, bevor ich sie hier posten konnte, da ich im Laufe der Jahre Beiträge mit Code gefunden habe, der zu spezifisch war, um schwierig in mein spezifisches Problem zu übersetzen. – xqj695