【发布时间】:2019-10-17 06:29:09
【问题描述】:
当我将两个 list 转换为 dict 时,我在名为“headers”的列表中获取了列标题名称,并在名为“row data”的列表中获取了每一行数据只获取唯一键值,如何获取所有重复值。
headers=['Filter1', 'Filter2', 'Filter3', 'SchemaName1', 'Filter1', 'Filter2', 'Filter3', 'SchemaName1', 'Filter1', 'Filter2', 'Filter3', 'SchemaName1', 'Filter1', 'Filter2', 'Filter3', 'SchemaName1', 'Filter1', 'Filter2', 'Filter3', 'SchemaName1']
rowdata=['US_CO', 'US_COM', 'US_DO', 'public', 'US_CO', 'US_COM', 'US_DO', 'publicss', '', '', '', '', '', '', '', '', '', '', '', '']
def savedata_click(self):
headers = []
rowdata = []
for row in range(self.table.rowCount()):
for column in range(self.table.columnCount()):
item = self.table.item(row, column)
if item is not None:
rowdata.append(item.text())
else:
rowdata.append('')
header = self.table.horizontalHeaderItem(column)
if header is not None:
headers.append(header.text())
else:
headers.append("Column " + str(column))
res= dict(zip(headers,rowdata))
print(res)
output:{'Filter1': '', 'Filter2': '', 'Filter3': '', 'SchemaName1': ''}
expected:[{'Filter1': 'US_CO', 'Filter2': 'US_COM', 'Filter3': 'US_DO', 'SchemaName1': 'public'},{'Filter1': 'US_CO', 'Filter2': 'US_COM', 'Filter3': 'US_DO', 'SchemaName1': 'publicss'},{'Filter1': '', 'Filter2': '', 'Filter3': '', 'SchemaName1': ''},{'Filter1': '', 'Filter2': '', 'Filter3': '', 'SchemaName1': ''}]
【问题讨论】:
-
@shaikmoeed.. Header 是表列名兄弟。如何获得与每一行的键相同的标题。
-
查看答案