Latest web development tutorials

Python 中文編碼

Python 中文編碼

前面章節中我們已經學會瞭如何用Python 輸出"Hello, World!",英文沒有問題,但是如果你輸出中文字符"你好,世界"就有可能會碰到中文編碼問題。

Python 文件中如果未指定編碼,在執行過程會出現報錯:

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

以上程序執行輸出結果為:

  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

Python中默認的編碼格式是ASCII 格式,在沒修改編碼格式時無法正確打印漢字,所以在讀取中文時會報錯。

解決方法為只要在文件開頭加入# -*- coding: UTF-8 -*-或者#coding=utf-8就行了。

實例(Python 2.0+)

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

print "你好,世界";

運行實例»

輸出結果為:

你好,世界

所以如果大家再學習過程中,代碼中包含中文,就需要在頭部指定編碼。

注意: Python3.X源碼文件默認使用utf-8編碼,所以可以正常解析中文,無需指定UTF-8編碼。

注意:如果你使用編輯器,同時需要設置好編輯器的編碼,如Pycharm設置步驟:

  • 進入file > Settings ,在輸入框搜索encoding
  • 找到Editor > File encodings ,將IDE EncodingProject Encoding設置為utf-8。