在cmd输入python显示乱码

python

在IDLE中执行下面代码,中文显示正常:

# -*- coding:utf-8 -*-

st=raw_input("请输入内容")

print st

但在CMD中执行e:hello.py,则中文会出现乱码。

出现乱码的原因:

这是因为我们写的py程序是utf-8编码的,通过python程序编译后,也是编译为utf-8编码,而这时cmd是通过gbk进行解析的,gbk解析utf-8,当然会出现乱码了。

下面我们就来看一下解决cmd中python乱码的方法:

1、2.7中把程序中的汉字转为gbk编码:

# -*- coding:utf-8 -*-

 

concent = "请输入内容:"

#将字符串由utf-8解码为unicode

c_unicode = concent.decode("utf-8")

#将解码后的字符串编码为gbk

c_gbk = c_unicode.encode("gbk")

st=raw_input(c_gbk)

print st

2、将CMD终端改为UTF-8格式

命令介绍:

chcp 65001   #换成utf-8代码页 

chcp 936       #换成默认的gbk 

chcp 437       #美国英语

一般默认为gbk,若要修改成 utf-8,则需要: 

1)、cmd窗口输入: 

chcp 65001

2)、修改cmd属性: 

选择字体为“Lucida Console”

更多Python知识请关注云海天Python教程栏目。

以上是 在cmd输入python显示乱码 的全部内容, 来源链接: utcz.com/z/527754.html

回到顶部