Python Informatik -> invalid Syntax?
if __name__ == '__main__':
a = [0, 1, 2, 3]
print(f"Hallo Liste a = {a}")
Wenn ich dieses Skript ausführe kommt die Fehlermeldung:
Was muss ich ändern damit das Skript funktioniert und ausgeführt wird?
3 Antworten
Die Fehlermeldung, die Sie sehen, deutet darauf hin, dass es ein Problem mit der Syntax Ihres Python-Skripts gibt. Genauer gesagt, gibt es ein Problem mit der print-Anweisung in Zeile 4. In Python muss die Druckanweisung richtig eingerückt sein, damit sie Teil des Codeblocks ist, zu dem sie gehört. In diesem Fall ist die Druckanweisung nicht richtig eingerückt, so dass Python sie nicht als Teil des Codeblocks erkennen kann.
Um dieses Problem zu beheben, können Sie die print-Anweisung einfach so einrücken, dass sie sich auf der gleichen Einrückungsebene befindet wie die Anweisung a = [0, 1, 2, 3]. Dadurch wird für Python deutlich, dass die print-Anweisung Teil des Codeblocks ist, und das Skript kann ohne Fehler ausgeführt werden. So würde das korrigierte Skript aussehen:
if __name__ == '__main__':
a = [0, 1, 2, 3]
print(f "Hallo Liste a = {a}")
In Python wird die Einrückung verwendet, um anzuzeigen, welche Anweisungen zum selben Codeblock gehören. Wenn eine Anweisung nicht richtig eingerückt ist, wird sie von Python nicht als Teil des Codeblocks erkannt, was zu Syntaxfehlern führen kann. Wenn Sie die Druckanweisung in Ihrem Skript richtig einrücken, können Sie dieses Problem vermeiden und sicherstellen, dass Ihr Skript korrekt ausgeführt wird.
Welche Python-Version nutzt du denn? F-Strings wurden iirc in 3.6 eingeführt, du solltest also mindestens diese Version ausführen - dann funktioniert der Code auch
>>> a = [0,1,2,3]
>>> print(f"Liste a = {a}")
Liste a = [0, 1, 2, 3]
Python 2.7.18 -> habe dieser version
Dann kann es natürlich nicht funktionieren
müsste ich diese wechseln?
Wenn du die f-Strings sowie neuere Features nutzen willst, ja. Hat es einen Grund, warum du noch Python 2 nutzt?
Solltest du noch alte Python-Programme haben, die für Python 2 geschrieben wurden, werden diese Probleme bereiten
2008: Ankündigung des Sunset für Python 2 im Jahr 2015. Immer wieder verschoben bis 1.1.2020, seitdem ist Python 2 sozusagen Geschichte.
Wechsle auf Python 3 (vorzugsweise 3.10, wenn nicht irgendwelche Abhängigkeiten im Wege stehen).
Seltsam, bei mir funktioniert es.
Ausgabe:
Hallo Liste a = [0, 1, 2, 3]
Python 2.7.18 -> habe dieser version
müsste ich diese wechseln?