Ich kann einen Stich in die Richtung machen, in die Sie gehen und ein gewisses Maß an Führung bieten, aber ich vermute, dass ich ohne weitere Informationen nicht in die richtige Richtung gehe.
Zunächst einmal brauchen Sie self
nicht als Parameter. Das gilt nur für Objekte.
Als nächstes müssen Sie die Variablen angeben, die in der Funktion als Parameter verwendet werden. Es sieht so aus, als hätten Sie versucht, a
und b
zu verwenden, ohne sie zu deklarieren.
def a1(a, b)
if a == 1:
return texta
elif b == 1:
return textb
Seien Sie vorsichtig, dass Sie keine Fälle verpassen. Was ist, wenn a = 0
und b = 0
? Dann würde diese Funktion None
zurückgeben.
Schließlich bin ich nicht sicher, was genau Sie mit der Schleife zu tun versuchen, aber vielleicht so etwas?
# assign a and b values somewhere
a = 1
b = 0
# save the functions in a list
my_functions = [a1, a2, a3]
# execute each function with the parameters `a` and `b`
for f in my_functions:
result = f(a, b)
x.append(result)
Dies wird in einer Liste führt die Ergebnisse Ihrer Funktion Ausführungen mit Parametern a
und b
enthält. Möchte mehr helfen, aber wir brauchen mehr Informationen. Vielleicht stimuliert das Obige das.
Versuchen Sie, die Funktionen in einer Schleife zu generieren? – user3080953
Könnten Sie näher erläutern, was Sie erreichen möchten? Dies wird uns helfen, Ihren Code in eine Schleife umzuwandeln. – JNevens
ja. Ich versuche, die Funktionen in einer Schleife zu generieren. ist es möglich? Ich bin wirklich neu in Python. Ich versuche dasselbe mit verschiedenen Variablenreihen zu machen. Anstatt jede Funktion zu schreiben, gibt es eine Möglichkeit, eine Schleife zu benutzen, so dass ich nur einmal schreiben muss? Danke – Feibai