[Python-3000] Unicode and OS strings
martin at v.loewis.de
martin at v.loewis.de
Sat Sep 22 07:48:40 CEST 2007
Zitat von Jim Jewett <jimjjewett at gmail.com>:
> On 9/21/07, Paul Moore <p.f.moore at gmail.com> wrote:
>> On 21/09/2007, Jim Jewett <jimjjewett at gmail.com> wrote:
>> > (Outside ASCII), if you treat sys.argv as text, that is probably
>> > impossible without filesystem support. Before python even sees the
>> > data, the terminal itself is allowed to change between canonical
>> > equivalents, which have different binary representations.
>
>> Please note - this statement is Unix specific. The situation on
>> Windows is entirely different (the fact that the CRT on Windows
>> emulates some aspects of the Unix semantics is not relevant here - you
>> need to understand the underlying OS model).
>
> No; it is a consequence of unicode. The command shell (or other
> program launcher) have the same freedom.
I'm not quite sure what you are talking about here (what "same"
freedom?), but Paul is right: your statement *is* Unix specific,
and the situation on Windows *is* different on Windows.
argc/argv does not exist on Windows (that you seem to see it
anyway is an illusion), and if it did exist, it would be characters,
not bytes. "Canonical equivalents" is not a property of bytes,
but of Unicode characters (code points specifically).
Also, I'm not quite sure why you think the file system has
to do anything with sys.argv (unless your understanding of
what a "filesystem" is differs from mine).
Regards,
Martin
More information about the Python-3000
mailing list