現象描述
我們用 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 "你好,世界";
複制
輸出結果為:
你好,世界
複制
![](https://img.laitimes.com/img/__Qf2AjLwojIjJCLyojI0JCLiAjM2EzLcd3LcJzLcJzdllmVldWYtl2Pn5GcuATM0IjY2UGOzkjNkJTZxgDZ5MjN1UTYjNGZ2MzY0gzMvw1NzMjNxkDOtUGall3LcVmdhNXLwRHdo9CXt92YucWbpRWdvx2Yx5yazF2Lc9CX6MHc0RHaiojIsJye.png)
是以如果使用2.+的版本代碼中包含中文,就需要在頭部指定編碼。