今天小编就为大家分享一篇解决python中使用PYQT时中文乱码问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
如题,解决Python中用PyQt时中文乱码问题的解决方法:
在中文字符串前面加上u,如u’你好,世界’,其他网上的方法没有多去探究,Python的版本也会影响解决方法,故这里只推荐这种。
(有人说用toLocal8bit函数也可以,我试了下,貌似不行)请看例子:
#coding=utf-8 from PyQt4 import QtGui, QtCore s = QtCore.QString(u'你好(hello)世界(world)') t = s.toLocal8Bit() u = unicode(t,'gbk'<em style="color:transparent">来源gao.dai.ma.com搞@代*码网</em>,'ignore') print t print u
这段程序的输出是:
���(hello)����(world) 你好(hello)世界(world)
【注】在使用控件,需要使用中文时,在要显示的字符串前面加上u即可,如(下面两句代码是在类中的,不可直接执行):
btn_quit = QtGui.QPushButton(u"关闭",self) reply = QtGui.QMessageBox.question(self, u'消息对话框', "Are you sure to quit?", QtGui.QMessageBox.Yes, QtGui.QMessageBox.No)
以上就是解决python中使用PYQT时中文乱码问题的详细内容,更多请关注gaodaima搞代码网其它相关文章!