導航:首頁 > 程序命令 > 修改命令行編碼

修改命令行編碼

發布時間:2024-09-08 22:33:46

python命令行輸入中文亂碼怎麼辦

python2.X,代碼中指定了UTF-8,但是在cmd命令行窗口時,列印的中文仍然會亂碼。

在python3不存在該問題

運行結果:

原因

中文windows默認的輸出編碼為gbk ,與腳本中定義的UTF-8不一樣,所以出現了解碼失敗的情況。

相關推薦:《Python基礎教程》

解決方法

有如下兩種方法可以解決這個問題

方法一

我們可以通過先把中文解碼為unicode,然後再轉化為gbk來解決這個問題:

修改後運行結果:

方法二

當然,我們也可以通過改變cmd命令行窗口的輸出格式來解決這個問題:

·chcp 65001 就是換成UTF-8代碼頁

·chcp 936 可以換回默認的GBK

但是這樣就降低了腳本的兼容性,在其他環境運行的時候可能還會出現這樣的錯誤,而且可能會影響其他腳本運行,所以推薦使用第一種方法。

⑵ 命令行下中文顯示亂碼,怎麼解決

cmd命令行窗口顯示中文亂碼,多是因為cmd命令行窗口字元編碼不匹配導致。

修改cmd窗口字元編碼為UTF-8,命令行中執行:chcp 65001
切換回中文:chcp 936
這兩條命令只在當前窗口生效,重啟後恢復之前的編碼。

切換cmd窗口字元編碼有風險,例如切換過以後中文顯示亂碼,並且不能永久切換回原來模式,只能每次chcp 936。

cmd中文顯示亂碼永久解決方案,以切換回中文936為例:

打開不正常的 CMD命令提示符窗口後,單擊窗口左上角的圖標,選擇彈出的菜單中的「默認值」,切換到第一個「選項」tab,將默認的代碼頁改為 936 後重啟 CMD。重啟cmd後還不能正常顯示請繼續往下看。

如果重啟 CMD以後無法生效:窗口的「默認值」和「屬性」沒變,則進入注冊表,在 HKEY_CURRENT_USER\Console下找到%SystemRoot%_system32_cmd.exe(如果沒有codepage就不考慮了),codepage值改為 936(十進制)或 3a8(十六進制)。
936(十進制)是簡體中文的,如是其它語言,則改為對應的代碼。

部分字元編碼對應代碼:
65001——UTF-8
936——簡體中文
950——繁體中文
437——美國/加拿大英語
932——日文
949——韓文
866——俄文

最後一個亂碼原因:CMD 的「默認值」或「屬性」窗口的「字體」選項卡中設定為可以顯示中文字元的字體,並且確定字體文件沒有被破壞,字體最好設置為默認的點陣字體。

閱讀全文

與修改命令行編碼相關的資料

熱點內容
centos7vim命令 瀏覽:908
安卓系統如何切換賓客用戶 瀏覽:440
php教材書 瀏覽:840
未見app怎麼刪除空間 瀏覽:567
安卓手機u盤加密 瀏覽:241
專業雲伺服器便宜 瀏覽:945
cad手機看圖怎麼弄新建文件夾 瀏覽:942
單片機數控繞線機 瀏覽:607
pdf表格能轉excel 瀏覽:412
伺服器之間的負載均衡如何實現 瀏覽:204
多媒體伺服器執行什麼定額子目 瀏覽:216
php獲取手機標識 瀏覽:906
點擊錄制按鈕是什麼app 瀏覽:890
證據提取命令視頻 瀏覽:354
java的學習心得 瀏覽:96
prof命令 瀏覽:279
手機加密文件密碼怎麼解開 瀏覽:283
賈躍亭程序員完整視頻 瀏覽:959
怎樣把兩個文件夾打包發送 瀏覽:378
單片機教程資料 瀏覽:982