python声明文件编码,必须在文件的第一行或第二行

#coding=utf-8和# -*- coding: utf-8 -*-的作用 – 指定文件编码类型

注意的两点:

1.声明必须在文件的第一行或第二行;

2.coding后面必须紧跟冒号或等号,#coding : utf-8是错的。

例:

声明编码前有字符串

1 '''testing user longin'''
2 #coding:utf-8
3 
4 print u'''登录相关的测试'''

或 声明编码位于第三行

1 #'test'
2 
3 #coding:utf-8
4 
5 print u'''登录相关的测试'''

或 coding后面有空格

1 #coding : utf-8
2 import os
3 
4 print u'''登录相关的测试'''

以上三种都会报错,如下:

SyntaxError: Non-ASCII character 'xe7' in file test.py on line 6, but no encodi
ng declared; see http://python.org/dev/peps/pep-0263/ for details

正确的应该是:

1 # coding=utf-8
2 u'''说明文档'''
3 
4 import os, sys
5 print u'这是正确的方式'

1 # coding:utf-8
2 u'''说明文档'''
3 
4 import os, sys
5 print u'这是正确的方式'

1 # -*- coding: utf-8 -*-
2 u'''说明文档'''
3 
4 import os, sys
5 print u'这是正确的方式'

1 #!/usr/local/bin/python
2 1 # -*- coding: utf-8 -*-
3 2 u'''说明文档'''
4 3 
5 4 import os, sys
6 5 print u'这是正确的方式'
原文地址:https://www.cnblogs.com/testlife007/p/4200108.html