python无法识别vim中文代码
問題描述,如圖所示:
首先第一句字符sss沒有打印出來,直接顯示print中文問題;所以可以判斷問題不是由python造成,而是由vim字符保存的編碼規則導致的,出現的無法識別問題;
查看:輸入命令:set encoding
這一步證明vim本身的顯示編碼規則為cp936,而不是utf-8
查看保存的文件編碼規則,set fileencoding
顯示fileencoding為空,但至少可以肯定無法指定是用utf-8規則;
查看vimrc文件可以得知,file保存的編碼規則只能是utf-8,但肯定是轉碼失敗;cp936是utf-8的母集,更為寬松的規則;
更改vimrc中fileencodings為下一句,包含cp936
重新打開文件,查看set fileencoding顯示為cp936
?說明文件保存編碼規則為cp936,所以python編譯器無法正確轉換(使用utf-8)
然后 set fileencoding=utf-8,然后保存
python運行代碼成功,
強行將vim內部編碼設置為utf-8編碼,
新建文件test004.py,查看encoding與fileencoding均為utf-8,,文件也運行成功;但vim本身終端顯示亂碼
由于termencoding與encoding是一樣的,但沒有轉換成功,說明encoding本身的utf-8無法正確加載vim;
修改vimrc
然后就能正常顯示;
結論:encoding為vim自身工具的編碼規則;fileencoding為file讀取保存的規則;termencoding為vim終端顯示的編碼規則;
最終的解決方案:
?
?
總結
以上是生活随笔為你收集整理的python无法识别vim中文代码的全部內容,希望文章能夠幫你解決所遇到的問題。