主頁 > 知識庫 > python無法識別vim中文代碼的解決方案

python無法識別vim中文代碼的解決方案

熱門標簽:百度AI接口 Win7旗艦版 電話運營中心 硅谷的囚徒呼叫中心 語音系統(tǒng) 呼叫中心市場需求 客戶服務 企業(yè)做大做強

問題描述,如圖所示:

首先第一句字符sss沒有打印出來,直接顯示print中文問題;所以可以判斷問題不是由python造成,而是由vim字符保存的編碼規(guī)則導致的,出現(xiàn)的無法識別問題;

查看:輸入命令:set encoding

這一步證明vim本身的顯示編碼規(guī)則為cp936,而不是utf-8

查看保存的文件編碼規(guī)則,set fileencoding

顯示fileencoding為空,但至少可以肯定無法指定是用utf-8規(guī)則;查看vimrc文件可以得知,file保存的編碼規(guī)則只能是utf-8,但肯定是轉(zhuǎn)碼失??;cp936是utf-8的母集,更為寬松的規(guī)則;

更改vimrc中fileencodings為下一句,包含cp936

重新打開文件,查看set fileencoding顯示為cp936

說明文件保存編碼規(guī)則為cp936,所以python編譯器無法正確轉(zhuǎn)換(使用utf-8)

然后 set fileencoding=utf-8,然后保存

python運行代碼成功,

強行將vim內(nèi)部編碼設置為utf-8編碼,

新建文件test004.py,查看encoding與fileencoding均為utf-8,,文件也運行成功;但vim本身終端顯示亂碼

由于termencoding與encoding是一樣的,但沒有轉(zhuǎn)換成功,說明encoding本身的utf-8無法正確加載vim;

修改vimrc

然后就能正常顯示;

結(jié)論:encoding為vim自身工具的編碼規(guī)則;fileencoding為file讀取保存的規(guī)則;termencoding為vim終端顯示的編碼規(guī)則;

最終的解決方案:

補充:vim+python3的字符串卻不能使用中文

ss=“愛江山更愛美人“

會出現(xiàn)錯誤,無法編碼

這個地方會出錯是因為

vim工具的encoding編碼為cp936

臨時解決方案

在vim命令行:

set encoding=utf-8

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

標簽:安康 崇左 長沙 山西 海南 濟南 喀什 山西

巨人網(wǎng)絡通訊聲明:本文標題《python無法識別vim中文代碼的解決方案》,本文關鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266