在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视频教程栏目。
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!