Ezio Melotti <ezio.melo...@gmail.com> added the comment:

I did some more experiments, here are the results:

Windows XP, from cmd.exe (cp850):
Py 2.x:
>>> raise SystemExit(u'aeiou') # unicode string, ascii chars, works fine
aeiou

>>> raise SystemExit(u'àèìòù') # unicode string, non-ascii chars, no output


>>> raise SystemExit('àèìòù') # byte strings, non-ascii chars, works fine
àèìòù

Py 3.0:
>>> raise SystemExit('àèìòù') # unicode string, non-ascii chars, wrong
output
àèìòù

The output here is utf-8 and cmd shows it as cp850.


Linux, UTF-8 terminal:
Py 2.x:
>>> raise SystemExit(u'àèìòù') # unicode string, non-ascii chars, no output

There's no output even if the terminal uses utf-8.

Py 3.x:
>>> raise SystemExit('àèìòù') # unicode string, non-ascii chars, works fine
àèìòù


When a unicode string with non-ascii characters is passed:
* Py2 always fails (no output);
* Py3 works only when the terminal uses utf-8, otherwise it fails (the
chars are displayed using another encoding).

----------
components: +Unicode
nosy: +ezio.melotti
priority:  -> normal
type:  -> behavior
versions: +Python 2.6, Python 2.7

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue3798>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to