这里是一个非ASCII字符有点tmp.py:
if __name__ == "__main__":
s = 'ß'
print(s)
运行它,我得到以下错误:
Traceback (most recent call last):
File ".\tmp.py", line 3, in <module>
print(s)
File "C:\Python32\lib\encodings\cp866.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_map)[0]
UnicodeEncodeError: 'charmap' codec can't encode character '\xdf' in position 0: character maps to <undefined>
Python文档说 :
默认情况下,Python源文件被视为UTF-8编码的...
我检查编码的方法是使用火狐(也许有人会提出一些更明显)。 我在Firefox打开tmp.py,如果我选择查看 - >字符Encoding->的Unicode(UTF-8),它看起来OK,就是它上面看起来这个问题(问心无愧SS符号)的方式。
如果我把:
# -*- encoding: utf-8 -*-
在tmp.py它不会改变第一串什么,错误仍然存在。
可能有人帮我找出我究竟做错了什么?