使用Windows系統cmd運行Python時中文亂碼問題有效的解決方式


系統是Windows7.在cmd或者powershell上使用Python2/3運行含有中文的Python源文件,都有中文亂碼問題。

目前找到的有效解決方法是先對中文按照指導的編碼方式解碼,然后按照指定的編碼方式編碼字符串,當然對於Python2要加上使用utf-8的注解,例如:

(該解決方案來自於http://www.runoob.com/python/python-chinese-encoding.html 的筆記)

#!/usr/bin/python
# -*- coding:utf-8 -*-
s = "你好,世界!"
print s.decode("utf-8").encode("gbk")  #先按照utf-8解碼,再按照gbk編碼

原因是windows 命令提示符的顯示編碼為 gbk 編碼。

在命令提示符下使用 chcp 查詢編碼。

"活動代碼頁:936" 代表命令提示符的編碼為 "gbk"

"活動代碼頁:65001" 代表命令提示符的編碼為 "utf-8"

 

之前試圖直接修改筆者的cmd活動代碼頁,但不論是通過可視化修改還是修改注冊表,網上的資料都不對筆者的電腦有效(可視化沒有對應的按鈕,注冊表找不到對應的字段)。而在cmd上直接使用chcp 65001跳到對應的活動窗口時運行Python文件還是亂碼。

不知道有沒有更好的合適筆者的方法,希望分享給筆者,非常感謝,因為先解碼再編碼的方式不太友好。

為了得到而努力

2019-03-28

轉載請注明來處

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM