1 回答

TA貢獻1831條經驗 獲得超10個贊
嘗試這個,
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', '', '', '', '', '', '', '', '', '', '', '', '']
>>> final_list = []
>>> header_length = 4 # Number of columns
>>> _splitted_dict_list = [{k:v} for k,v in zip(headers, rowdata)]
>>> for v in range(0, len(_splitted_dict_list), header_length):
final_list.append({nk:nv for nested_dict in _splitted_dict_list[v:v+4] for nk,nv in nested_dict.items()})
輸出:
>>> final_list
[{'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': ''},
{'Filter1': '', 'Filter2': '', 'Filter3': '', 'SchemaName1': ''}]
添加回答
舉報