Jon*_*ong 13 python pyqt data-conversion qvariant pyqt4
这些天我只是在学习python和Qt.所以请考虑这将是一个新手问题,但我被困在这里.
import sys
from PyQt4.QtCore import *
data1 = 'string'
data2 = QVariant(data1)
data3 = data2.toPyObject()
Run Code Online (Sandbox Code Playgroud)
我期望data3与data1,'string'相同.但是在我的系统中data3是
PyQt4.QtCore.QString(u'string')
Run Code Online (Sandbox Code Playgroud)
如果我想处理的数据很简单,例如,但是我想处理'dict'类型的数据,所以我需要解决这个问题,这不是什么大问题.
我认为这是编码问题,但找不到如何解决它.
*在每份文件中,我都声明:
#-*- coding: utf-8 -*-
Run Code Online (Sandbox Code Playgroud)
ekh*_*oro 14
您可以通过将数据包装在不可变容器中来解决此问题:
>>> from PyQt4.QtCore import QVariant
>>> data = {'key1': 123, 'key2': 456}
>>> v = QVariant((data,))
>>> v.toPyObject()[0]
{'key2': 456, 'key1': 123}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10542 次 |
| 最近记录: |