Python Informatik -> invalid Syntax?

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]
Woher ich das weiß:Studium / Ausbildung – Abgeschlossenes Studium der Informatik (B.Sc.)
Hallodk 
Fragesteller
 03.12.2022, 15:26

Python 2.7.18 -> habe dieser version

müsste ich diese wechseln?

0
xxxcyberxxx  03.12.2022, 15:28
@Hallodk
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

0
KarlRanseierIII  03.12.2022, 18:11
@Hallodk

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).

0

Seltsam, bei mir funktioniert es.

Ausgabe:

Hallo Liste a = [0, 1, 2, 3]
Hallodk 
Fragesteller
 03.12.2022, 15:21

welchen compiler/interpreter benutzt du

0