0

我正在使用 PyQt4 和 python 来解析 csv 文件,进行一些计算并显示结果。

如果我打印变量,结果会正确显示。但是,如果我将这些变量放在 QStandardItem 中,它们会显示为空。请问我在做什么错?

下面的示例,QStandardItem 中的变量 sum 和 nbr2 显示为空,而打印正常。

def loadCsv(self, fileName):
    with open(fileName, "rb") as fileInput:
        for row in csv.reader(fileInput):

                            global nbr, nbr2, nbr3, name, sum
                            nbr= 1000
                            nbr2= 20
                            name= row[0]
                            nbr3= float(row[1])
                            sum = int((nbr*nbr2*nb3))
                            print nbr, nbr2, nbr3, name, sum

                            items = [QtGui.QStandardItem(sum),QtGui.QStandardItem(nbr2)]
                            self.model.appendRow(items)

@QtCore.pyqtSlot()
4

1 回答 1

1

QStandardItem有多个构造函数。如果您int作为参数传递,它预计您的意思是行数。如果要设置文本,则必须通过str.

QtGui.QStandardItem(str(sum))

http://doc.qt.io/qt-4.8/qstandarditem.html#QStandardItem

于 2016-04-07T12:07:44.583 回答