我在Linux环境下编程python(使用pycharm和python 2.7的Ubuntu)。一切都像魅力一样,然后我尝试在Windows 8环境中使用我的项目。
我对带有重音的代码有一些评论,然后我在utf8中编码了我的文件(无论如何,我认为这是最好的事情)。
我的问题: 我在Windows上使用我的项目时出错:
SyntaxError: Non-ASCII character '\xc3' in file C:/Somedirectory/MyFile.py on line 13, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
所以我知道这是一个编码问题,但我在这里理解,当我的文件实际上是在utf8时,Window尝试解码ascii编码,这没有意义。
使用文本编辑软件,我发现我的文件是没有BOM的utf8,如果我使用BOM转换utf8,那么一切都工作顺利。
你知道Linux和Windows utf8编码之间有什么区别吗? Windows无法在没有bom的情况下检测到utf8吗?
编辑: 是的我知道PEP0263并使用# - - 编码:utf8 - -