unicode woes
Martin v. Löwis
loewis at informatik.hu-berlin.de
Thu Sep 26 07:04:44 EDT 2002
Ulli Stein <mennosimons at gmx.net> writes:
> Or how would you do this (nonsense string):
> str = str + "blaäö" + str[:5] + "ßüä"
>
> Would you write then:
> str = str + unicode("blaäö") + str[:5] + unicode("ßüä")?
If you want to use Unicode in source code, and you want to use
non-English text: yes, you have to define a helper function, e.g.
def uni(x):
return unicode(x, "iso-8859-1")
In this case, the system encoding might be incorrect; Python cannot
know what encoding you use in your source code: If you move your
source code from one machine to another, the system encoding may
change, but your source code won't.
If you want to write internationalized code, I recommend to avoid
using non-English string literals. Instead, use English text, and
translate this at run-time using message catalogs (e.g. gettext).
> And what about the "encode" variable in site.py: If another Python
> application running in parallel to our application changes the encode
> string, will it affect our app? Or has every application its own encode
> string?
If you keep your sitecustomize.py in a location that is private to
your application, there is a good chance that it won't interfere with
another application.
Regards,
Martin
More information about the Python-list
mailing list