以下代码保存为utf-8编码的文本文件:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
print 'é'
当我使用Python 2.7在Linux的命令行上运行上面的代码时,我得到了预期的输出é
。
如果我将文件中的编码声明从utf-8更改为cp1252并重新运行它,我会得到相同的输出é
。
但是,Python现在不应该将文件中的é
解释为十六进制c3a9
,作为cp1252编码文本吗?在这种情况下,输出应为é
?
如果我强制我的文本编辑器将文件视为cp1252编码文本,则é
会更改为é
。为什么Python没有做同样的事情?