python在cmd中的編碼問題


編碼問題

問題1

python采用utf-8編碼通過cmd命令執行,報錯IOError: [Errno 0] Error

解決辦法
設置窗口字符集:
chcp 65001
set PYTHONIOENCODING=utf-8

問題2

UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position

python2的默認編碼是ascII,而代碼中可能由utf-8的字符導致

解決辦法
設置utf-8編碼

# 方法1
#coding=utf-8

# 方法2
import sys

if sys.getdefaultencoding() != 'utf-8':
    reload(sys)
    sys.setdefaultencoding('utf-8')

問題3

cmd中文輸入和顯示問題

解決辦法
chcp命令切換字符格式:

chcp 65001   #換成utf-8代碼頁
chcp 936       #換成默認的gbk
chcp 437       #美國英語

一般默認為gbk,若要修改成 utf-8,則需要:
cmd窗口輸入:chcp 65001


免責聲明!

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



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