今のPython2.5は文字列型が2つある。
入出力の部分で文字コード変換すれば問題は無いんだが、
1バイト圏の連中はASCII前提で何もしないから困る。

Python2.5
 str型: 1バイト1文字
 unicode型: 多バイト1文字(UCS-2 or UCS-4)
Python3.0
 str型: 多バイト1文字(UCS-2 or UCS-4)

UTF-8なら今のものでも問題ないと思う。
でもWindowsはShiftJISだから日本語を使うと問題が出るときがある。

Python3.0になるとUnicodeで作ることを強制されるので
たぶん自然に改善されるはず。