Python 中文编码

举报
小工匠 发表于 2021/09/10 23:08:41 2021/09/10
【摘要】 现象描述 我们用 Python 输出 “Hello, World!”,英文没有问题, 但是如果你输出中文字符”你好,世界”就有可能会碰到中文编码问题。 Python 文件中如果未指定编码,在执行过程...

现象描述

我们用 Python 输出 “Hello, World!”,英文没有问题,

但是如果你输出中文字符”你好,世界”就有可能会碰到中文编码问题。

Python 文件中如果未指定编码,在执行过程会出现报错:

#!/usr/bin/python
print "你好,世界";
  
 
  • 1
  • 2

以上程序执行输出结果为:

File "test.py", line 2
SyntaxError: Non-ASCII character '\xe4' in file test.py on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for details
  
 
  • 1
  • 2

Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。


解决办法

解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了。

实例(Python 2.0+)

#!/usr/bin/python
# -*- coding: UTF-8 -*-

print "你好,世界";
  
 
  • 1
  • 2
  • 3
  • 4

输出结果为:

你好,世界
  
 
  • 1

这里写图片描述

所以如果使用2.+的版本代码中包含中文,就需要在头部指定编码。

文章来源: artisan.blog.csdn.net,作者:小小工匠,版权归原作者所有,如需转载,请联系作者。

原文链接:artisan.blog.csdn.net/article/details/52476250

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。