我的发展:
os:windows xp
python:python-3.1.2.msi
pyqt:PyQt-Py3.1-gpl-4.7.4-1.exe
代码:
import sys
from PyQt4 import QtCore, QtGui
app = QtGui.QApplication(sys.argv)
s = QtCore.QtString()
sys.exit(app.exec_())
它总是告诉我
在'module'中
s = QtCore.QtString()
AttributeError:'module'对象没有属性'QtString'
我查了代码:
import sys
from PyQt4.QtGui import *
from PyQt4.QtCore import *
app = QApplication(sys.argv)
s = QtString()
sys.exit(app.exec_())
然后它总是这样告诉我:
在'module'中
s = QtString()
NameError:名称'QtString'未定义
我该怎么办?
答案 0 :(得分:5)
此处解释了此问题http://inputvalidation.blogspot.com/2010/10/python3-pyqt4-and-missing-qstring.html
你无法加载QString
的原因是PyQt4缺少它(可能更早,谁知道)。由于Py3k与Py2k相反,默认支持Unicode,因此不需要此类。
出于兼容性原因,您应该在import
的某处使用此代码段而不是QString:
try:
from PyQt4.QtCore import QString
except ImportError:
QString = str
答案 1 :(得分:2)
您的意思是QString
而不是QtString
吗?
(您可以在python解释器中执行help(QtCore)
并搜索string
)