关于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 3, but no encoding declared。

  想在python代码中输出汉字。但是老是出现SyntaxError: Non-ASCII character '\xe4' in filetest.pyonline, 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/

优质内容筛选与推荐>>
1、Mono3.0.2基于双工通信的WCF应用Demo
2、【分类战车SVM】第五话:核函数(哦,这实在太神奇了!)
3、被巨头盯上,重在抉择
4、这有“三高一快零故障”网络架构实践,还有掉坑逃生指南
5、Java中,权限修饰符的权限测试


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号





    联系我们

    欢迎来到TinyMind。

    关于TinyMind的内容或商务合作、网站建议,举报不良信息等均可联系我们。

    TinyMind客服邮箱:support@tinymind.net.cn