Python 2 - ord() 返回不正确的值

Python 2 - ord() returning an incorrect value

这是我的文本文件 (sample.txt)。

É
Â
Ê
Î
Ç
Ô
È
Û
Ï
Ë
À
Ù
Ü

现在,当我调用 python 脚本来读取那些字符的 ord() 值时,我总是收到 195。这是为什么?

file = open("C:\sample.txt", "r")
for line in file:
    print ord(line[0])
file.close()

ord() 195 的值是这个字符:Ã 并且我在上述任何行中根本不存在它。我期待以下序列的输出:

201, 194, 202, 206, 199, 212, 200, 219, 207, 203, 192, 217, 220.

你应该切换到 python 3;它解决了问题:

file = open("sample.txt", "r")
for line in file:
    print(ord(line[0]))
file.close()

这会打印:

201
194
202
206
199
212
200
219
207
203
192
217
220

符合预期。