Python Unicode

From OLPC
Revision as of 16:57, 3 May 2007 by Xavi (talk | contribs) (+Translations)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
  english | português | español HowTo [ID# 36322]  +/-  

Python has good unicode support, but it is not necessarily easy to use. Some things to note:

  • You must test your application with real Unicode (not ASCII-encodable) text. You can miss lots of bugs if you just use normal ASCII text (i.e., a-z, no accents).
  • You should be careful not to confuse 8-bit strings (that contain binary data and are of type "str"), and text (that contains unicode data and is of type "unicode"). It's easy to substitute one for the other, until you use non-ASCII text, then you'll get a UnicodeEncode/DecodeError.
  • The codecs module has some helpers for reading unicode from files.
  • You can't generally write unicode to a file or the console without setting up something with codecs or another wrapper.

Resources

Some resources to learn about Unicode: