I`d хотел преобразовать следующий входной питона:Есть ли более простой способ преобразования этих объектов питона
[{'paramA': ['valA1','valA2','valA3','valA4']},
{'paramB': ['valB1','valB2','valB3','valB4']},
{'paramC': ['valC1','valC2','valC3','valC4']},
# ...........................................,
{'paramN': ['valN1', 'valN2','valN3','valN4']}]
В следующий вывод:
[{'paramA': 'valA1','paramB': 'valB1', 'paramC': 'valC1', ...,'paramN':'valN1' }
{'paramA': 'valA2','paramB': 'valB2', 'paramC': 'valC2', ...,'paramN':'valN2' }
{'paramA': 'valA3','paramB': 'valB3', 'paramC': 'valC3', ...,'paramN':'valN3' }
{'paramA': 'valA4','paramB': 'valB4', 'paramC': 'valC4', ...,'paramN':'valN4' } ]
Единственная функция, которую я мог придумать заключается в следующем:
def transformParams(inputParams):
res = []
for i in inputParams:
for k,v in i.items():
for ind, inv in enumerate(v):
if len(res) <= ind:
res.append({})
res[ind][k] = inv
return res
Я новичок в Python, и я думаю, что это может быть сделано более простым способом, используя вещий список понятий. Может ли кто-нибудь прийти с лучшим ответом?
Я думаю, что на вашем выходе, при последних парах значений ключа каждого словаря, вы имеете в виду '' paramN: valueN1 '..' paramN ':' valueN2 '....' paramN ':' valueNm''? –
Да, спасибо, что заметили :) –