我用 Python 2 编写了一个脚本,该脚本分为 4-5 个模块。我在脚本中使用匈牙利语,其中包含几个不寻常的字符,例如 öüóőúéáűí。我在 Win7 上用原始的 cp-1250 编码编写了模块,然后我搬到了 Ubuntu raring,系统默认为 Utf-8。
首先 Tkinter 离开了规范。包含标签空白的字母,我通过将模块开头的每个编码设置为# -*- Utf-8 -*-
.
条目也开始变得疯狂。他们的.get()
方法引发了 UnicodeDecodeError: 'ascii' codec can't decode byte...
最后,如果例如 modulea.py
有一个字典dict = {'Sándor': 16}
并且 moduleb.py
有一个 line a.dict['Sándor']
,它会引发 KeyError,就好像 dict 不包含'Sándor'
. 它不会对仅包含普通字符的字符串执行此操作,也不会对模块自己的字典执行此操作。