8编码

tyu7yeag  于 2021-07-24  发布在  Java
关注(0)|答案(2)|浏览(401)

这个问题在这里已经有答案了

定义python源代码编码的正确方法(6个答案)
5年前关门了。
考虑:

$ cat bla.py 
u = unicode('d…')
s = u.encode('utf-8')
print s
$ python bla.py 
  File "bla.py", line 1
SyntaxError: Non-ASCII character '\xe2' in file bla.py on line 1, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

如何在源代码中声明utf-8字符串?

djmepvbi

djmepvbi1#

在源标题中,可以声明:


# !/usr/bin/env python

# -*- coding: utf-8 -*-

....

pep 0263中对此进行了描述:
然后可以在字符串中使用utf-8:


# !/usr/bin/env python

# -*- coding: utf-8 -*-

u = 'idzie wąż wąską dróżką'
uu = u.decode('utf8')
s = uu.encode('cp1250')
print(s)

在python3中不需要这个声明,因为utf-8是默认的源代码(参见pep3120)。
此外,验证您的文本编辑器是否正确地用utf-8编码了您的代码可能是值得的。否则,您可能会有不可见的字符,这些字符不会被解释为utf-8。

14ifxucb

14ifxucb2#

不要忘记验证您的文本编辑器是否正确地编码了utf-8中的代码。
否则,您可能会有不可见的字符,这些字符不会被解释为utf-8。

相关问题