Python 3.2 print( Ende=") Fehler

Ich bin geboren wieder amateur-Programmier-Anfänger, die versuchen zu lernen, Python 3 (3.2) mit Geany unter Linux. Ich hab schon versucht das zu überarbeiten, das folgende Beispiel, in Swaroop C H ' s Python 3 tutorial Mein code ist wie folgt:

#!/usr/bin/env python3
# Filename: poem.py

poem = '''\
Programming is fun 
When the work is done 
if you wanna make your work also fun: 
    use Python!
'''

with open('poem.txt', mode = 'w') as pfile:
    pfile.write(poem)

with open('poem.txt', mode = 'r') as pfile:
    while True:
        line = pfile.readline()
        if len(line) == 0:
            break
        print(line, end='')

Kann ich nicht kompilieren Sie das Programm. Ich bekomme die folgende Fehlermeldung, die ich nicht verstehe:

SyntaxError: ('invalid syntax', ('poem.py', 19, 24, "        print(line, end='')\n"))

Bekomme ich den gleichen Fehler beim ausführen der code unverändert. Es funktioniert, wenn ich entfernen end=' '. Wenn ich es weglassen eine leere Zeile gedruckt wird, zwischen jeder Zeile des Gedichts.

Wäre ich dankbar für jede Hilfe/Erklärung.

  • Sind Sie absolut sicher, dass Sie mit Python 3? Haben Sie versucht, führen Sie es als python3 poem.py?
  • Btw., dieses tutorial ist Autor scheint ein Anfänger (wie auch der schreckliche poet :p). Die Pythonic Weise zum Durchlaufen der Zeilen einer Datei ist for line in pfile.
InformationsquelleAutor Disnami | 2012-02-11
Schreibe einen Kommentar