如何在 PyQt4 中创建 QString?
>>> from PyQt4 import QtCore
>>> str = QtCore.QString('Hello')
AttributeError: 'module' object has no attribute 'QString'
>>> QtCore.QString._init_(self)
AttributeError: 'module' object has no attribute 'QString'
是的,我已阅读 QString 类参考
为什么我无法导入 QString
来自 QtCore
,如文档中所指定?
>>> from PyQt4 import QtCore
>>> str = QtCore.QString('Hello')
AttributeError: 'module' object has no attribute 'QString'
>>> QtCore.QString._init_(self)
AttributeError: 'module' object has no attribute 'QString'
Yes, I've read QString Class Reference
Why can't I import QString
from QtCore
, as specified in the docs ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
在Python 3中,QString默认自动映射到原生Python字符串:
http://pyqt.sourceforge.net/Docs/PyQt4/qstring.html
In Python 3, QString is automatically mapped to the native Python string by default:
http://pyqt.sourceforge.net/Docs/PyQt4/qstring.html
从 PyQt4 4.6+ 开始,Python3 中的 QString 不存在,您应该使用普通的 Python3 unicode 对象(字符串文字)。要做到这一点,以便您的代码可以在 Python 2.x 和 Python 3.x 中工作,您可以执行以下操作:
根据您的用例,您可能会摆脱这个简单的黑客攻击。
From PyQt4 4.6+ in Python3 QString doesn't exist and you are supposed to use ordinary Python3 unicode objects (string literals). To do this so that your code will work in both Python 2.x AND Python 3.x you can do following:
Depending on your use case you might get away with this simple hack.
这取决于您的进口声明。
如果您编写,则
必须使用以下方式调用 QString
我认为您已经编写了以下内容:
这并不是真正推荐的,但您应该使用以下方式调用 String:
It depends on your import statement.
If you write
you must call QString with
I think you've written this :
It's not really recommended, but you should call String with :