关键字:Python UTF-8 GBK 中文
乱码
估计入门时都会遇到的。我是在windows下用的Python25自带的IDLE编辑运行的,发现运行脚本得出的结果有一些中文显示是乱码,但有一些是正常的。百思不得其解。首先查看了一下源文件的编码格式,是UTF-8。经过搜索再搜索,调试再调试,也换了几个编译器,发现比IDLE还糟糕(可能需要进行encode设置)。问题终于解决了,一共花了俺将近5个小时,写在这里,希望遇到问题的人能搜索到这里,不再重犯。
乱码原因:
因为你的文件声明为utf-8,并且也应该是用utf-8的编码保存的源文件。但是windows的本地默认编码是cp936,也就是gbk编码,所以在控制台直接打印utf-8的字符串当然是乱码了。
解决方法:
在控制台打印的地方用一个转码就ok了,打印的时候这么写:
print
myname.decode(‘UTF-8‘).encode(‘GBK‘)
比较通用的方法应该是:
import
sys
type = sys.getfilesystemencoding()
print
myname.decode(‘UTF-8‘).encode(type)
相关文章
- 09-23Qt编码问题解决实践(中文乱码,UTF-8与GBK转换,QString转QByteArray)
- 09-23如何解决表单提交的中文乱码问题
- 09-23SSM框架中的中文乱码问题
- 09-23SecureCRT终端显示中文乱码问题的解决方案
- 09-23几张图带你理解Web开发的中文乱码问题
- 09-23不用下载字体解决Mac系统下Python的matplotlib库中文乱码的问题
- 09-23(转发)python3用matplotlib绘图出现中文乱码的问题
- 09-23中文路径乱码问题,URLDecoder.decode的坑
- 09-23如何解决python 图表中文显示乱码问题(matlplotlib 包)
- 09-23关于window.open()中文传值乱码问题的解决方法