【发布时间】:2018-08-29 12:19:16
【问题描述】:
我正在寻找一种用 PyQt5 代码替换以下 C++ 行的方法:
QString messageString = QString::fromLocal8Bit(aMultiformMessage.data(), aMultiformMessage.size());
aMultiformMessage 是一个 QByteArray。
有任何想法吗? PyQt5 文档(Things to be aware of)仅声明:
Qt 使用 QString 类来表示 Unicode 字符串,并且 QByteArray 来表示字节数组或字符串。在 Python v3 中 对应的原生对象类型为 str 和 bytes。
但是并没有说明对应的Qt类(QString、QByteArray)的方法是如何替换的。
【问题讨论】:
-
原生 Python 方式类似于
messageString = aMultiformMessage.data().decode("latin-1")。将str传递给PyQt5方法时,会隐式转换为QString。
标签: python-3.x pyqt5 porting qstring qbytearray