从QTableWidgetItem

时间:2015-09-21 15:21:58

标签: encoding utf-8 python-3.4 pyqt5

我正在使用PyQt5和包含CheckBoxes项的QTableWidget工作。我用json文件中的数据填充表,用户可以检查/取消选中项目。

当我想从QTableWidget个项目中检索数据时,由于某些字符而导致意外错误:\x19。有问题的字符是,在其他地方很好地显示。

我不明白这个问题,因为我的输入json数据是utf-8,我使用python3,当我检查数据时,我看不到编码问题。仅在text()上调用QTableWidgetItem方法时才会出现此错误。 由于我没有看到任何其他方式从我的项目中检索数据,我完全坚持它。

with open(filepath) as file:
    self.data = json.load(file)
    for key, value in self.data.items():
        print(key, self.data[key])
        keyword_box = QTableWidgetItem(key)

如果我使用key与其他字符串进行比较(例如,当我想要检索数据时(用户未执行编辑,字符串未更改),则不会出现错误

items = self.table.selectedItems()
    for item in items:
        print(item.text())

我在控制台中出现未知字符,如果我尝试使用该值,我会得到一个\x19字符,当我用它来比较字典中的键时会失败。

这可能来自QTableWidgetItem text()方法中的错误吗?

0 个答案:

没有答案