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