#PYTHON-Beispiel #PYTHON-Version 3.1.2 #Auf Windows XP for person in ["Herr Müller", "Frau Meier", "Tina Schulze"]: print(person, "lernt Python!") Ich habe hier ein Problem mit dem Buchstaben Ü in Müller. Wenn ich das Ü entferne funktioniert es, ansonsten kommt eine Fehlermeldung.
Toll. Es kommt "eine Fehlermeldung". Lautet die etwa "Dies ist eine Fehlermeldung"? Dein Problem wird möglicherweise daran liegen, daß Dein Editor eine ungeeignete Zeichencodierung verwendet, und Dein Quelltext nicht so aussieht, wie Python das erwartet. Stichwörter: UTF-8, Codepage 1252, "ANSI" bzw. "Latin-1" oder ISO8859-1. Oder, sofern Du in einer Textkonsole ("Eingabeaufforderung") unterwegs bist, Codepage 850 bzw. 437.
Versuchs mal mit # -*- encoding: iso-8859-15 -*- oder # -*- encoding: utf-8 -*- in der ersten Zeile. Je nachdem, wie deine Quelltextdatei codiert ist.
# -*- encoding: iso-8859-15 -*- for person in ["Herr Müller", "Frau Meier", "Tina Schulze"]: print(person, "lernt Python!") Fehlermeldung: Traceback (most recent call last): File "D:\PYTHON31\x.py", line 3, in <module> print(person, "lernt Python!") File "D:\Python31\lib\encodings\cp850.py", line 19, in encode return codecs.charmap_encode(input,self.errors,encoding_map)[0] UnicodeEncodeError: 'charmap' codec can't encode character '\x81' in position 6: character maps to <undefined> ------------------------------------------------------------------------ -- # -*- encoding: utf-8 -*- for person in ["Herr Müller", "Frau Meier", "Tina Schulze"]: print(person, "lernt Python!") Fehlermeldung: File "D:\PYTHON31\x.py", line 2 SyntaxError: (unicode error) 'utf8' codec can't decode byte 0x81 in position 0: unexpected code byte ------------------------------------------------------------------------ -- # -*- coding: cp2352 -*- for person in ["Herr Müller", "Frau Meier", "Tina Schulze"]: print(person, "lernt Python!") Fehlermeldung: File "D:\PYTHON31\x.py", line 1 SyntaxError: encoding problem: with BOM ------------------------------------------------------------------------ - # -*- encoding: cp2352 -*- for person in ["Herr Müller", "Frau Meier", "Tina Schulze"]: print(person, "lernt Python!") Fehlermeldung: File "D:\PYTHON31\x.py", line 1 SyntaxError: encoding problem: with BOM ------------------------------------------------------------------------ for person in ["Herr Mller", "Frau Meier", "Tina Schulze"]: print(person, "lernt Python!") Keine Fehlermeldung
Poste doch mal die Datei als Anhang, dann sieht man ja, wie die kodiert ist. Außerdem, Python 3.1? Wirklich?
Wenn ich Python interaktiv starte
erscheint folgendes:
D:\PYTHON31>python
Python 3.1.2 (r312:79149, Mar 21 2010, 00:41:52) [MSC v.1500 32 bit
(Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
Ich habe es von der Buch-CD:
Thomas Theis
Einstieg in Python 3
Galileo Computing
# -*- coding: cp852 -*- for person in ["Herr Müller", "Frau Meier", "Tina Schulze"]: print(person, "lernt Python!") Keine Fehlermeldung Vielen Dank an alle. Jetzt funktioniert es.
Mit dem passenden Editor (z.B. Notepad++) kannst du das Skript in einem von dir gewählten "encoding" abspeichern (mit und ohne BOM). Das muss natürlich mit dem Hinweis für Python übereinstimmen. Ich nehme immer utf-8.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.