boolean Ausdruck führt zu Syntaxfehler

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Brando
User
Beiträge: 171
Registriert: Donnerstag 28. Januar 2016, 15:36

ich erhalte einen Syntaxfehler invalid sytax wenn ich folgendes codiere:

Code: Alles auswählen

gefunden = True
if gefunden: 
   loesung="richtig"
  
Zuletzt geändert von Anonymous am Freitag 26. August 2016, 14:40, insgesamt 1-mal geändert.
Grund: Quelltext in Python-Codebox-Tags gesetzt.
Sirius3
User
Beiträge: 17753
Registriert: Sonntag 21. Oktober 2012, 17:20

@Brando: bei den drei Zeilen erhältst Du garantiert keinen Syntaxfehler. Bitte den wahren Code und die komplette Fehlermeldung inklusive Traceback posten.
Brando
User
Beiträge: 171
Registriert: Donnerstag 28. Januar 2016, 15:36

Vielleicht stimmt mit meiner Maschine ja etwas nicht. Hier der Code, der eine Eingabematrix mit einer Lösungsmatrix vergleichen soll.

Code: Alles auswählen

   q,r = np.linalg.qr(a_matrix)
   loesungstext=''
   gefunden=True
   for i in range(q.shape[0]):
     for j in range (q.shape[1]):
       if round(q[i,j],2)!=round(tb_container[i].children[j],2):
         gefunden=False
         loesungstext=loesungstext+"Fehler in Zelle " + str(i)+ " " + str(j) + " wahrer Wert ist: "+ str(round(q[i,j],2) + '\n'
   if gefunden:
         loesungstext="richtige Loesung"
Zuletzt geändert von Anonymous am Freitag 26. August 2016, 14:39, insgesamt 1-mal geändert.
Grund: Quelltext in Python-Codebox-Tags gesetzt.
BlackJack

@Brando: Suche jede öffnende Klammer und die jeweils dazugehörende schliessende Klammer. Da fehlt eine.
Sirius3
User
Beiträge: 17753
Registriert: Sonntag 21. Oktober 2012, 17:20

@Brando: Bei numpy sollte man ausnutzen, dass man mit kompletten Matrizen rechnen kann

Code: Alles auswählen

q,r = np.linalg.qr(a_matrix)
vergleich = np.array([row.children for row in tb_container])

abweichung = np.where(abs(q-vergleich) >= 0.01)
if abweichung[0].size > 0:
    loesungstext = ''.join("Fehler in Zelle {}/{}. Wahrer Wert ist: {:.2f}\n".format(i, j, q[i,j]) for i, j in zip(*abweichung))
else:
    loesungstext = "richtige Loesung"
Brando
User
Beiträge: 171
Registriert: Donnerstag 28. Januar 2016, 15:36

Ja daran war es gelegen. Vielen Dank!
Antworten