Seite 1 von 1
Geschachtelte for - Schleife
Verfasst: Montag 14. Dezember 2009, 18:04
von Draco2010
Hallo
l=[for x in range(1,5) for y in range(1,5) if x+y < 5]
print l
Fehlermeldung : Invalid Syntax
Invalid Syntax bedeutet das entweder eine Klammer oder Doppelpunkt fehlt!
Kann mir jemand etwas dazu sagen ?
Vielen Dank
Verfasst: Montag 14. Dezember 2009, 18:07
von Dav1d
Versuchs mal so:
Code: Alles auswählen
l=[x for x in range(1,5) for y in range(1,5) if x+y < 5]
Allerdings ist mir nicht so ganz klar was das werden soll
Re: Geschachtelte for - Schleife
Verfasst: Montag 14. Dezember 2009, 18:13
von cofi
Draco2010 hat geschrieben:Invalid Syntax bedeutet das entweder eine Klammer oder Doppelpunkt fehlt!
Wie kommst du denn darauf? Im Uebrigen solltest du den Traceback ganz lassen, auch wenn du vielleicht nichts damit anfangen kannst.
Vielleicht erzaehlst du uns aber mal was du vorhast? Zaehlschleifen sind meist unnoetig (v.a. wenn die Schreiber aus der C-Familie kommen).
@Dav1d: l is ein schlechter name und ein paar Leerzeichen haettest du auch noch spendieren koennen. (Ja ich weiss, dass du das uebernommen hast, aber du bietest ja eine _bessere_ Loesung an).
Verfasst: Montag 14. Dezember 2009, 18:17
von Dav1d
Stimmt, steht sogar in der PEP8 so drinnen und auch l (L) und 1 (eins)
Code: Alles auswählen
my_strange_list = [x for x in range(1,5) for y in range(1,5) if x+y < 5]
//Edit: OK l und 1 kann bei dem Schrifttyp vom Forum gut unterscheiden
Verfasst: Montag 14. Dezember 2009, 18:40
von jbs
Ich denke er hat das l einfach übernommen.
@Draco2010: Du musst auch die Werte verwenden.
Verfasst: Montag 14. Dezember 2009, 19:54
von Draco2010
David ich bin Dir sehr Dankbar, es hat funktioniert !
Ich komme aus gar keiner Programmiersprache, bin ein Quereinsteiger und versuche, einige Mathematische Formeln umzusetzen, um es nacher anwenden zu können.
Python 2.6.4 ist meine erste Programmiersprache (einige Grundkenntisse in Basic vorhanden)!
Habe schon einige Python PDF Dateien gelesen, aber hat mir sehr wenig gebracht, bis ich anfing praktische Kenntnisse zu sammeln.
Also bin ich dabei, durch versuch und irrtum zu lernen, bleibt mehr hängen!
Im internet habe ich nach Syntax-Error bedeutung gesucht!
Verfasst: Montag 14. Dezember 2009, 20:03
von cofi
@Draco2010: Nach SyntaxError zu suchen macht keinen Sinn, du musst den Traceback lesen und verstehen, die sind meist recht praezise, wenn nicht is der Fehler in der Zeile davor, der Interpreter verschluckt sich dabei aber noch nicht.
Generell solltest du nicht "einige Python PDF Dateien" lesen, sondern das
Tutorial (oder die deutsche Uebersetzung, aber Vorsicht: Python 3).
@jbs: Das habe ich ja erkannt (und geschrieben

).
@Dav1d: Das Problem ist ja, dass der Schrifttyp nicht ueberall gleich ist und man das deshalb eventuell fuer lesbar haelt, es bei einem anderen aber identisch dargestellt wird.
Verfasst: Montag 14. Dezember 2009, 20:06
von Dauerbaustelle
Draco2010 hat geschrieben:Im internet habe ich nach Syntax-Error bedeutung gesucht!
Als Mathematiker solltest du um die vielfältigen Möglichkeiten eines Syntax-Fehlers aber wissen, in der Mathematik gibt es auch nicht nur "Zahl-unterm-Bruch-vergessen", sondern auch nicht-geschlossene Klammern und so weiter ;-)
Verfasst: Montag 14. Dezember 2009, 20:18
von Draco2010
Ein Mathematiker bin ich leider nicht, aber mir ist schon bewusst das Python auf Fehler sensiebel reagiert!
Binn also für jede Antwort mit Erklärung dankbar!