在使用mac 平臺的sublime text3 編寫Python3程序代碼友瘤,當遇到中文輸出時會遇到如下的錯誤提示。
‘ascii’ codec can’t encode characters in position 0-5: ordinal not in range(128)
打印中文提示錯誤
首先分析下出現(xiàn)問題的原因檐束。
1.在命令行辫秧,運行py 文件,看漢字是否顯示正常被丧,若正常則極大可能為sublime text3的原因盟戏。
2.若不正常,可能是Python3的配置原因甥桂。
(匆促的判讀可能導致問題無法解決柿究,作者在第一時間去查找了Python3的配置問題崇裁。折騰了1個小時都沒解決問題妙蔗。)
若顯示如下,說明python3的安裝配置沒有問題捌袜。
本機命令行顯示編譯正常
打開sublime text3的配置文件。在路徑下面加入如下代碼即可解決貌夕。
"file_regex": "^[ ]File \"(...?)\", line ([0-9]*)",
"selector": "source.python",
"env": {"PYTHONIOENCODING": "utf8"},
編輯Python3的配置文件
可正常輸出中文漢字
若問題是由于2引起的律歼。則需要在程序中加入如下代碼
!7茸ā苗膝!一定要看py文件在命令行能否正常運行,判斷問題所在~V簿伞H杞摇!
問題2的解決方法病附,沒法解決問題1问窃。網上百度得來的解決方案,大多數(shù)都是基于問題2的完沪。