我有一个 Python 脚本,它使用 UTF-8 编码编写一些字符串。在我的脚本中,我主要使用str()
转换为字符串的函数。它看起来像这样:
mystring="this is unicode string:"+japanesevalues[1]
#japanesevalues is a list of unicode values, I am sure it is unicode
print mystring
我不使用 Python 终端,只使用标准的 Linux Red Hat x86_64 终端。我将终端设置为输出 utf8 字符。
如果我执行这个:
#python myscript.py
this is unicode string: カラダーズ ソフィー
但如果我这样做:
#python myscript.py > output
我得到了典型的错误:
UnicodeEncodeError: 'ascii' codec can't encode characters in position 253-254: ordinal not in range(128)
这是为什么?