Ich habe gerade angefangen, SAGE zu verwenden, das ziemlich nah an Python ist, wie ich es verstehe, und ich bin über dieses Problem gekommen, wo ich als Parameter einer Funktion eine Matrix haben werde, die ich mehrfach in der Funktion mit verwenden möchte die gleiche ursprüngliche Funktion, aber durch die verschiedenen Teile der Funktion verändert es Werte.Wie kann ich den Wert meiner Parameter durch eine Funktion erhalten, so dass sie mehrfach mit ihrem Anfangswert verwendet werden kann?
Ich habe in einem Tutorial gesehen, dass die Deklaration einer Variablen in der Funktion als variable = list(parameter)
nicht den Parameter oder was auch immer in die Klammern gesetzt wird. Aber ich kann es nicht funktionieren lassen. Unten ist ein Teil meines Programms, das das Problem aufwirft (ich kann den Rest bei Bedarf hinzufügen): Ich deklariere die Variable determinant
, die als Wert das Ergebnis der Funktion my_Gauss_determinant
mit der Variablen auxmmatrix
hat Parameter. Durch die Funktion my_Gauss_determinant
ändert sich der Wert auxmmatrix
aber aus irgendeinem Grund auch der Wert mmatrix
. Wie kann dies vermieden werden und der Parameter mmatrix
mit seinem ursprünglichen Wert wiederverwendet werden?
def my_Cramer_solve(mmatrix,bb):
auxmmatrix=list(mmatrix)
determinant=my_Gauss_determinant(auxmmatrix)
if determinant==0:
print
k=len(auxmmatrix)
solution=[]
for l in range(k):
auxmmatrix1=my_replace_column(list(mmatrix),l,bb)
determinant1=my_Gauss_determinant(auxmmatrix1)
solution.append(determinant1/determinant0)
return solution
Was ist der Typ von 'mmatrix'? –
Es ist eine Liste zum Beispiel aa = [[1,1], [0,2]] und so ist bb –