Seite 1 von 1

Umlaute

Verfasst: Montag 26. März 2007, 12:57
von sprudel
Hi. Ist vielleicht eine klassische Anfängerfrage, aber ich habe seltsamerweise nirgendwo etwas dazu gefunden.

Folgendes:
Ich habe gestern angefangen, mich in wxPython einzulernen (was garnicht so leicht ist, Tkinter ist 1000x einfacher). Jetzt stellt sich nur die Frage: DrPython gibt mir immer bei Umlauten (auch in den Kommentaren) eine Fehlermeldung aus. Ich habe auch schon auf UTF8 gestellt. Danach habe ich es in Idle probiert. Dort kann ich zumindest in normalen print-Befehlen Umlaute verwenden. Es ist nur blöderweise so, dass ich die dann wieder nicht in den wx-Fenstern verwenden kann, weil es mir da immer nur noch so ein komisches Zeichen anzeigt. Woran könnte das denn liegen? Ich brauche doch schließlich Umlaute :lol: .

Verfasst: Montag 26. März 2007, 12:59
von DHK
Hallo Sprudel,
vielleicht hilft dir das hier:
http://www.python-forum.de/topic-9957.html

Gruß

DHK

Re: Umlaute

Verfasst: Montag 26. März 2007, 13:10
von gerold
sprudel hat geschrieben:Ich brauche doch schließlich Umlaute :lol:.
Hi sprudel!

Zuerst mal ein Link. Bitte durchlesen und Beispiele ausprobieren.

http://www.python-forum.de/topic-5095.html

Und jetzt noch etwas wxPython-spezifisches:

Nachdem du dir klar geworden bist, dass du Encoding-Cookies angeben musst um Python damit das Encoding mitzuteilen, in dem das Python-Modul abgespeichert wurde, solltest du wxPython mitteilen, in welchem Encodings es die Strings erwarten soll, die nicht als Unicode übergeben werden.

Das machst du mit ``wx.SetDefaultPyEncoding()``.
Z.B.

Code: Alles auswählen

wx.SetDefaultPyEncoding("iso-8859-1")

Code: Alles auswählen

>>> help(wx.SetDefaultPyEncoding)
Help on function SetDefaultPyEncoding in module wx._core:

SetDefaultPyEncoding(*args, **kwargs)
    SetDefaultPyEncoding(string encoding)
    
    Sets the encoding that wxPython will use when it needs to convert a
    Python string or unicode object to or from a wxString.
    
    The default encoding is the value of ``locale.getdefaultlocale()[1]``
    but please be aware that the default encoding within the same locale
    may be slightly different on different platforms.  For example, please
    see http://www.alanwood.net/demos/charsetdiffs.html for differences
    between the common latin/roman encodings.

>>> 
mfg
Gerold
:-)

Verfasst: Montag 26. März 2007, 13:25
von sprudel
Hi. Irgendwie funktioniert das ganze noch nicht so richtig.

C:/Python25/pythonw.exe -u "F:/Programmierung und Entwicklung/Python/Programmierdateien/Wx Versuche/versuche.py"
File "F:/Programmierung und Entwicklung/Python/Programmierdateien/Wx Versuche/versuche.py", line 15
SyntaxError: Non-ASCII character '\xc3' in file F:/Programmierung und Entwicklung/Python/Programmierdateien/Wx Versuche/versuche.py on line 15, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details




Diese Meldung gibt mir DrPython immer zurück.


Edit: Hab das Problem doch selber gelöst. Hatte eine Zeile vergessen ;-) Trotzdem vielen Dank für die Hilfe

Verfasst: Montag 26. März 2007, 16:32
von Francesco
Hallo,

Welche DrPython-Version verwendest Du? Hast du 1.64 (die letzte)?
Welche wxPython-Version (ansi oder Unicode)?
Was passiert, wenn Du bei Preferences-Generell "latin-1" eingibst?

Verfasst: Donnerstag 29. März 2007, 17:08
von name
Kanns sein das du

Code: Alles auswählen

# -*- coding: utf-8 -*-
nicht angegeben hast.
Weil die Fehlermeldung sagt genau das