Python中文编码
页面解决
Python 文件中如果未指定编码,在执行过程会出现报错:
print "你好,世界";
以上程序执行输出结果为:
File "C:/Users/Administrator/PycharmProjects/Python01/py01.py", line 1 SyntaxError: Non-ASCII character '\xe4' in file C:/Users/Administrator/PycharmProjects/Python01/py01.py on line 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details
Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。
解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了
注意:#coding=utf-8 的 = 号两边不要空格。
实例:
#coding=utf-8 print("你好,世界");
输出:你好,世界
注意事项
- Python3.X 源码文件默认使用utf-8编码,所以可以正常解析中文,无需指定 UTF-8 编码。
- 如果你使用编辑器,同时需要设置 py 文件存储的格式为 UTF-8,否则会出现类似以下错误信
SyntaxError: (unicode error) ‘utf-8’ codec can’t decode byte 0xc4 in position 0: invalid continuation byte
系统设置
- 进入 file > Settings,在输入框搜索 encoding。
- 找到 Editor > File encodings,将 IDE Encoding 和 Project Encoding 设置为utf-8。