的Python:用类方法需要参数

问题描述:

地图我要打电话与PyQt5的QTableWidget,特别PyQt5.QTableWidget.setItem一组参数的方法。的Python:用类方法需要参数

我有一个字符串的这份名单中,

row = ["a","b","c","d"] 

,我需要把每一个元素在表中的列,除了第一个。我试过的是

items = [ QTableWidgetItem(r) for r in row[1:] ] 
arguments = zip([rowNumber+1]*(len(row)-1), range(1,len(row)), items) 
putItem = lambda x:tableWidget.setItem(*x) 
import itertools 
itertools.starmap(putItem, arguments) 

我也尝试过使用map和zip参数,但似乎没有任何工作。我知道我可以在参数上做一个for循环,但我想要“更优雅”的地图解决方案。

的主要问题是没有信息显示在表中,虽然没有任何错误报告,也没有报警,也没有什么。

谢谢!

+0

“似乎没有任何工作”你得到一个错误?该表是否不包含条目?确切的问题是什么? – 2016-11-10 15:32:04

+0

该表不包含条目,但未报告错误。我会在这个问题上加上这一点。 – oxio

环路更优雅虽然不如简洁,恕我直言。

当你创建一个发电机(如星图),你必须使用它来执行代码。例如,将其传递给list()

+0

谢谢!它工作,但我必须等待7分钟才能接受答案。现在我必须解决行被移动的问题,但这不是答案的要点,非常感谢! – oxio

只为它赫克,这里写这个代码理智的方式:

for column, text in enumerate(row[1:], 1): 
    tableWidget.setItem(rowNumber + 1, column, QTableWidgetItem(text))