如果要在python2的py文件里面写中文,则必须要添加一行声明文件编码的注释,否则python2会默认使用ASCII编码。(python3已经没
有这个问题了,python3默认的文件编码是UTF-8)。
必须将编码注释放在第一行或者第二行,一般来说,Python文件的前两行要这样写:
#!/usr/bin/python # -*- coding: UTF-8 -*-
其中第一行是指定python解释器,第二行是指定python文件编码方式,设置编码方式有以下可选的方法
1. 带等号的设置方法:
#!/usr/bin/python # coding=<encoding name>
2. 最常见的,带冒号的(大多数编辑器都可以正确识别的):
#!/usr/bin/python # -*- coding: <encoding name> -*-
设置头部的编码声明有以下几个作用:
如果代码中有中文注释,就需要此声明比较高级的编辑器(比如我的emacs),会根据头部声明,将此作为代码文件的格式。程序会通过
头部声明,解码初始化 u”人生苦短”,这样的unicode对象,(所以头部声明和代码的存储格式要一致)