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

修改命令行編碼

發布時間: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 的「默認值」或「屬性」窗口的「字體」選項卡中設定為可以顯示中文字元的字體,並且確定字體文件沒有被破壞,字體最好設置為默認的點陣字體。

閱讀全文

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

熱點內容
androidapk安裝流程 瀏覽:422
郵箱顯示伺服器加密 瀏覽:133
linux最低配置 瀏覽:510
java生成pdf並列印 瀏覽:357
pagerhelper源碼 瀏覽:125
收款app軟體哪個好用 瀏覽:233
哈佛管理pdf 瀏覽:742
韓國語pdf 瀏覽:129
溯源碼為啥有的有有的沒 瀏覽:155
語音組合播報演算法 瀏覽:355
華為p6手機怎麼加密圖片 瀏覽:83
豆豆引流哪個app好 瀏覽:577
php頁面框架 瀏覽:24
安卓手機如何打開pdt文件 瀏覽:141
抽獎翻牌規則演算法 瀏覽:138
如何打開電腦自主編程器 瀏覽:563
加密貨幣刑事犯罪 瀏覽:692
哪裡可以買單片機 瀏覽:444
學習緩解壓力的原因 瀏覽:514
天津ug編程教育機構排名 瀏覽:295