关于python无法显示中文的问题:SyntaxError: Non-ASCII character ‘\xe4’ in file test.py on line 3, but no encoding declared。

想在python代码中输出汉字。但是老是出现SyntaxError: Non-ASCII character ‘\xe4’ in file test.py on line , but no encoding declared
(test.py
是我自己的文件,提示错误出现在第4行,
你的文件也会得到相应的提示) 一个简单的示例test.py代码如下:

1
#!/usr/bin/python

2

3
print
你好吗

  在终端下执行python test.py指令之后,

  File “test.py”, line 3

  SyntaxError: Non-ASCII character ‘\xe4’ in file test.py on line 3, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details

  这是python编码的问题, python中默认的编码格式是ASCII格式,
所以在没修改编码格式时无法正确打印汉字。

  解决办法:  在以后的每一个需要显示汉字的python文件中,
可以采用如下方法在
#!/usr/bin/python
的下一行加上一句话来定义编码格式,
我以utf-8编码为例。

  第一种:

1
#!/usr/bin/python

2
#coding:utf-8

3
print
你好吗

  第二种:

1
#!/usr/bin/python

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

3
print
你好吗

  第三种:

1
#!/usr/bin/python

2
#vim: set fileencoding:utf-8

3
print
你好吗

  ***特别注意:定义编码格式的这一行代码必须放在第一行或者第二行,
一般如果第一行是提示python位置的代码,
那么定义编码格式的这一行就必须放在第二行,否则依然会提示错误。

  想了解多细节请阅读:http://www.python.org/dev/peps/pep-0263/

Comments

No comments yet. Why don’t you start the discussion?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注