用户在QTableWidget中的所有单元格中手动设置值。表中第一行的值表示我们想要存储在字典FirstRowDict
中的值。第二行值将被放入SecondRowDict
等等。用给定行的所有单元格值填充字典
所以,从表像图中所示之一, 我们要结束了在这个例子与FirstRowDict={0:10,1:20}
和SecondRowDict={0:30,1:40}
要做到这一点我创建了一个按钮,添加一个动作说点击时更新目标字典:
def button_click():
for j in range(0,2):
FirstRowDict.update({i: float(str(tablewidget.itemAt(0,j).text()))})
#I put "0" in itemAt because first row is zero
#tablewidget = QTableWidget() declared earlier in the source code
SecondRowDict.update({i: float(str(tablewidget.itemAt(1,j).text()))})
print '1st_Row_Dict=%s'%1st_Row_Dict,'\n2nd_Row_Dict=%s'%2nd_Row_Dict
输出是不正确的,因为字典中填充了相同的值而不是每个单元格的唯一值。 我得到FirstRowDict={0:10,1:10}
和SecondRowDict={0:10,1:10}
看来,我要创建使用QTableWidgetItemhttp://doc.qt.nokia.com/4.7-snapshot/qtablewidget.html#item
Python的初学者一个新的项目,一些建议,将不胜感激。
作为输出得到什么?顺便说一下,'1st_Row_Dict'在Python中不是一个有效的名字。 – Avaris
这就是我得到的结果:FirstRowDict = {0:10,1:10},SecondRowDict = {0:10,1:10}。我编辑字典名称,因为我只是选取了这些名字作为示例 – CosmoSurreal