創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!
創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)、梅江網(wǎng)絡(luò)推廣、微信平臺小程序開發(fā)、梅江網(wǎng)絡(luò)營銷、梅江企業(yè)策劃、梅江品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們大的嘉獎;創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供梅江建站搭建服務(wù),24小時服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com小編給大家分享一下解決sublime中python出現(xiàn)中文亂碼的問題,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
一、亂碼現(xiàn)象
利用sublime自帶編譯快捷方式ctrl+B會出現(xiàn)中文亂碼的情況。
print("沒有循環(huán)數(shù)據(jù)!") print("完成循環(huán)!")
二、尋找原因
1、由于之前我已經(jīng)安裝了插件ConvertToUTF8,排除文本編碼錯誤問題。
2、相同的代碼在插件sublimerepl搭建的解釋器交互下(按F5鍵),能成功顯示中文。
在查找了很多案例之后發(fā)現(xiàn):
Anaconda插件安裝之后會自動生成一個叫“Anaconda Python Builder”的編譯系統(tǒng),在 工具-編譯系統(tǒng)-中可以看到。
sublime讀取解釋器返回文本的編碼不一樣,于是通過下面這段代碼驗證:
import sys print(sys.stdout.encoding)
用ctrl+B進(jìn)行編譯,返回的是“cp936”,用repl解釋器交互返回的是utf-8,說明是由于編碼不一致導(dǎo)致的。
之后新建了一個編譯系統(tǒng):
在Python3.sublime.build中寫入下面代碼:
{ "cmd":["C:\\Users\\jh\\Anaconda3\\python.exe", "-u", "$file"], "path":"C:\\Users\\jh\\Anaconda3\\python.exe", // 注意:路徑根據(jù)自己的python安裝路徑而定 "file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", "selector": "source.python", "encoding": "utf-8" , "env": {"PYTHONIOENCODING": "utf8"}//通過這句,使編碼一致,都是utf8 }
之后再用ctrl+B進(jìn)行編譯,返回“utf-8”,并且能成功打印中文。
但是在此之前,因為嘗試多種方法,導(dǎo)致anaconda插件的自動補全代碼無法使用,于是重裝。
三、Anaconda插件的正確使用
1、閱讀官方指南,官方給的建議是最好每個項目都獨立設(shè)置。
2、根據(jù)官方的建議,新建一個project,并編輯項目,在sublime-project文件中寫入:
{ "build_systems": [ { "name": "Anaconda Python Builder", "selector": "source.python", "encoding": "utf-8" , "env": {"PYTHONIOENCODING": "utf8"},\\使編碼一致 "shell_cmd": "C:\\Users\\jh\\Anaconda3\\python.exe -u \"$file\"",\\解釋器路徑 } ], "folders": [ { "follow_symlinks": true, "path": "." } ], "settings": { "python_interpreter": "C:\\Users\\jh\\Anaconda3\\python.exe" \\解釋器路徑 } }
保存。
3、在Preferences>Package Settings>Anaconda,在那里會發(fā)現(xiàn)兩個不同的條目,Settings-Default和Settings-User分別選擇1和2。這些文件中的任何選項都必須放置在全局范圍內(nèi)。在Settings-User中寫入:
{ //http://damnwidget.github.io/anaconda/IDE/ //"python_interpreter":"C:\\Users\\jh\\Anaconda3\\envs\\tensorflow\\python.exe", "python_interpreter":"C:\\Users\\jh\\Anaconda3\\python.exe", "auto_python_builder_enabled": false, "suppress_word_completions":true,//禁用掉Sublime Text原生的自動補全 "suppress_explicit_completions":true, "complete_parameters":true, "anaconda_linter_phantoms": true,//提示錯誤,識別代碼中的語法錯誤,代碼建議,格式建議等 "pyflakes_explicit_ignore"://告訴PyFlakes要忽視哪些警告 [ // "Redefined", "UnusedImport" // "UndefinedName", // "UndefinedLocal", // "UnusedVariable,", // "UndefinedExport", // "DuplicateArgument", // "RedefinedWhileUnused" ], "anaconda_linting_behaviour": "always",//模式 "anaconda_linting": true, "anaconda_linter_delay": 2.0,//周期 "swallow_startup_errors": true, "env": {"PYTHONIOENCODING": "utf8"} , }
看完了這篇文章,相信你對解決sublime中python出現(xiàn)中文亂碼的問題有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道,感謝各位的閱讀!