我的Python源代码(注释,字符串)中有一些带重音的字符,Django给了我这些字符的错误。
我必须将此行放在Python文件的顶部才能使其正常工作:
# -*- coding: utf-8 -*-
有没有办法在整个项目中全局允许UTF8?
答案 0 :(得分:2)
在Python 2中,默认情况下源文件被解释为ASCII,除非问题中的编码声明出现在文件的顶部。
在Python 3中,源文件默认被解释为UTF-8(同样,除非编码声明指定了其他编码)。
有关此更改历史的信息,请参阅PEP 3120:Using UTF-8 as the default source encoding。
没有其他方法可以强迫Python将源文件解释为默认编码以外的编码。
所以,你有两个选择:
将编码声明添加到包含非ASCII字符的每个源文件中。
切换到Python 3.
选项2是迄今为止更好的选择,从长远来看,这将为您省去很多麻烦。