使用python3不向PyQt4的tr()国际化方法传递ascii字符

使用python3不向PyQt4的tr()国际化方法传递ascii字符,python,python-3.x,internationalization,pyqt4,decode,Python,Python 3.x,Internationalization,Pyqt4,Decode,Python3、PyQt4和国际化 我想将一些包含非ASCII字符的字符串传递给PyQt的tr()方法,我得到以下错误: >>> from PyQt4.QtGui import QDialog >>> from PyQt4.QtCore import QObject >>> QDialog.tr(QObject(), 'abc') 'abc' >>> QDialog.tr(QObject(), 'abcγδε') Trace

Python3、PyQt4和国际化

我想将一些包含非ASCII字符的字符串传递给PyQt的
tr()
方法,我得到以下错误:

>>> from PyQt4.QtGui import QDialog
>>> from PyQt4.QtCore import QObject
>>> QDialog.tr(QObject(), 'abc')
'abc'
>>> QDialog.tr(QObject(), 'abcγδε')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: function takes exactly 5 arguments (1 given)
>>> 
>>>从PyQt4.QtGui导入QDialog
>>>从PyQt4.QtCore导入QObject
>>>tr(QObject(),'abc')
“abc”
>>>tr(QObject(),'abcγδε')
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
TypeError:函数正好接受5个参数(给定1个)
>>> 
如何修复此问题?

您需要使用。用于ASCII字符串。(其签名为
const char*sourceText,…

你需要使用。用于ASCII字符串。(其签名为
const char*sourceText,…

QDialog.trUtf8(QObject(), 'abcγδε')