WIN8下python3使用os.system命令输出时Hbuilder控制台出现中文乱码的解决方法

未命名-1.jpg

故障表现状态

2345截图20170625173632.png

原因分析及解决过程

由于python3默认采用了UTF-8编码,而WIN8的CMD窗口采用的是GBK编码,导致了编码不同。

但是,如果简单的通过encode('gbk')之类的方法,不能解决根本问题。

尤其是当我们根本不是使用print命令来输出,而是控制台默认输出的情况下,是没办法修改os.system的编码格式的,因为os.system执行命令返回的并不是命令中出现的文本,而是一个int,为0时表示成功,为1时表示异常。

后来通过搜索hbuilder相关文章已经无法解决,想到hbuilder其实是eclipse内核的,所以搜索了eclipse+控制台+乱码,发现一篇文章:

http://blog.csdn.net/forandever/article/details/24811273

大概意思是,修改运行环境。瞬间醍醐灌顶啊:输出不是问题,问题出在控制器的显示本身了。

于是按照前辈的方法,解决了问题,解决方法如下:

解决方案

1、在代码编辑区点击右键,选择“运行方式”->“运行 配置(N)”,如图:

2345截图20170625173827.png

2、在弹出的“运行 配置”窗口中,选择左侧的文件(你在编辑的文件,应该是默认选了的),右边选择“公共”选项卡,如图:

2345截图20170625173929.png

3、 在公共选项卡中,将“编码”项的设置修改为“其他(E)”->“GB2312”,这里默认是缺省值UTF8,如图:

2345截图20170625174053.png

4、点击“应用”,然后关闭。

5、再运行一下看看,是不是变成中文了?

2345截图20170625174251.png

唠叨一句

这个问题其实无伤大雅,因为程序发布后控制台的东西外人是看不到的。纯粹就是因为看着不顺眼!

标签: none

添加新评论