str and unicode proper usage

gizli mehmetf at gmail.com
Mon Dec 14 13:05:35 EST 2009


Hi all,

If an entire application operates on Unicode strings from UI to
database, is there a use case for str() and unicode() functions? The
application should be able to read/write files, open sockets and
execute external processes and parse their output. From my own
experiments, the open() command for files accepts unicode strings. I
am just wondering if there is a place where str() would have to be
used, other than the usual use case of converting a non-string python
construct (such as an integer) into a string.

The reason I am asking is, I work on a project with several other
developers and our NLS testing is not going so well. Major reason is
(I think) that there is a lot of str() functions interspersed
everywhere. So whenever a unicode character is used in those
variables, the application breaks. My recommendation to the team was
to remove these functions and only leave the necessary ones. However,
I do not have a generic answer on when a str() function is necessary.

Thanks!



More information about the Python-list mailing list