問題就來了,為什么要如此聲明?
首先請參考Python的PEP http://www.python.org/dev/peps/pep-0263/
概要如下
1.必須將編碼注釋放在第一行或者第二行
2.可選格式有
[python] view plain copy# coding=<encoding name> [python] view plain copy#!/usr/bin/python # -*- coding: <encoding name> -*- [python] view plain copy#!/usr/bin/python # vim: set fileencoding=<encoding name> : 但是再往下看,發現其實只要注釋里面有coding 和對應的編碼就可以了,例如[python] view plain copy#!/usr/bin/python # vim: set fileencoding=<encoding name> : 所以搞了半天對最標準的做法也有點糊涂了。后來想了想,看了下VIM中對python的語法高亮文件,里面把如下的正則表達式確定為編碼聲明
[plain] view plain copy/%^.*但是為什么通常這種方式呢?
[python] view plain copy# -*- coding:utf-8 -*- 答案在PEP-0263里面有所提及,那就是Emacs等編輯器使用這種方式進行編碼聲明。話說PEP里面很多東西都是很值得參考的畢竟可以知道為什么程序這樣設計。
相關參考
PEP-0263
http://www.python.org/dev/peps/pep-0263/
vim語法文件編寫總結
http://www.cnblogs.com/kohpoll/archive/2012/08/04/2623483.html
# -*- coding: UTF-8 -*- 這是個注釋嗎?
http://bbs.chinaunix.NET/thread-590066-1-1.html
新聞熱點
疑難解答