[Python-de] print von Nicht-ASCII-Zeichen

Andreas Pakulat apaku at gmx.de
Mon Aug 28 17:23:16 CEST 2006


On 28.08.06 16:38:23, Stefan Schwarzer wrote:
> Hallo Andreas,
> 
> On 2006-08-28 16:07, Andreas Pakulat wrote:
> > On 28.08.06 15:11:17, Stefan Schwarzer wrote:
> >> Hallo Alexander,
> >>
> >> On 2006-08-28 12:43, Alexander 'boesi' Bösecke wrote:
> >>> Mein Problem ist nun, dass wenn stdout nicht sichtbar ist (also auch
> >>> nicht umgeleitet wird) und mit print Nicht-ASCII-Zeichen ausgegeben
> >>> werden, werden alle nachfolgenden Befehle schlicht ignoriert. Das
> >>> angehängte use_wx.py demonstriert dies. Wird das Programm mit 'python
> >>> use_wx.py' ausgeführt, erscheinen 2 Message-Boxes und 'ä' wird auf
> >>> stdout ausgegeben. Wird das Programm dagegen mit 'pythonw.exe ausgeführt,
> >>> erscheint nur die 1. Message-Box. Wird 'ä' durch 'a' ersetzt, erscheinen
> >>> in jedem Fall 2 Message-Boxes.
> >> wenn ich dein Beispiel-Progrämmchen use_wx.py auf meinem Rechner
> >> (Gentoo Linux) in einem xterm ausführe, bekomme ich nach dem
> >> Klick auf die Schaltfläche "Test" einen Traceback:
> >>
> >> Traceback (most recent call last):
> >>   File "/tmp/use_wx.py", line 15, in test
> >>     print u'ä'
> >> UnicodeEncodeError: 'ascii' codec can't encode character u'\xe4' in position 0: ordinal not in range(128)
> > 
> > Dann hast du die erste Zeile des Programms entfernt oder benutzt ein
> > uraltes Python. Offensichtlich denkt dein Python naemlich der Quellcode
> > waere in ascii, ist er aber nicht, was auch mit der Zeile
> > 
> > # -*- coding: utf_8 -*-
> > 
> > angegeben wird. Hier mit python2.4 funktioniert das wunderbar, sowohl
> > mit UTF-8 als auch Latin1 Umgebung.
> 
> weder das eine noch das andere. Die erste Zeile ist drin und ich
> verwende Python 2.4.3.

Stimmt, war ein Schnellschuss von mir. Das Problem ist das die Locale in
dem Terminal keine Zeichen >127 erlaubt, also vmtl. C ist. Mit de_DE,
de_DE.UTF-8 oder aehnlichem solle es problemlos gehen.

Andreas

-- 
You're definitely on their list.  The question to ask next is what list it is.



More information about the python-de mailing list