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

修改命令行編碼

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

閱讀全文

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

熱點內容
iphone如何快速分組app 瀏覽:785
程序員喝的純牛奶 瀏覽:251
nginxphpupload 瀏覽:111
汽車單片機技術教學大綱 瀏覽:848
解壓視頻白頭小哥 瀏覽:748
cadq命令 瀏覽:956
python連接本地資料庫報錯 瀏覽:194
手機模擬加密禁卡操作 瀏覽:105
電荷數怎麼演算法 瀏覽:589
cad如何打開命令行 瀏覽:151
php圖片限制大小 瀏覽:164
程序員一夜未歸 瀏覽:593
蘋果xsmaxapp怎麼不顯示更新 瀏覽:600
蘋果app怎麼清除角標 瀏覽:483
解壓屁屁玩具臟了怎麼辦 瀏覽:670
演算法識別自動折疊 瀏覽:10
dos命令遍歷文件 瀏覽:456
翻譯整個pdf 瀏覽:198
怎麼給解壓軟體授權 瀏覽:622
怎麼換手機桌面壁紙安卓 瀏覽:957