据我所知,这些在使用 UTF-8 作为默认编码的系统中应该是等效的:
pattern1 = 'Wörterbuch Wortformen'.decode('utf8')
pattern2 = u'Wörterbuch Wortformen'
但是,当我将这些行从 Emacs 缓冲区发送到 Python 进程 ( M-x python-shell-send-region
) 时,会发生一些奇怪的事情。
>>> pattern1
u'W\xf6rterbuch Wortformen'
>>> pattern2
u'W\xc3\xb6rterbuch Wortformen'
在终端中运行的 Python shell 中,两行的结果都是u'W\xf6rterbuch Wortformen'
.
这里发生了什么?
我的语言环境配置为使用 UTF-8。