У меня есть эта структура:Итерация dicts из в Словаре сращиваемых длины списков
d = {
"a": [1, 2, 3],
"b": [4, 5, 6],
"c": [7, 8, 9],
}
Длины списков гарантированно соответствовать. Я хочу, чтобы итератор я могу для-перебрать, который будет обслуживать до Dict для каждого столбца в списках, вроде как молния превратилась обратно в Словаре с оригинальными названиями клавиш каждый раз, как это:
>>> for i in iDictOfListsToDicts(d):
... print i
{"a": 1, "b": 4, "c": 7}
{"a": 2, "b": 5, "c": 8}
{"a": 3, "b": 6, "c": 9}
Я уверен, что могу что-то взломать в генераторной функции, но чувствую, что мне не хватает узкой комбинации, возможно, двух вещей, возможно, из коллекций и/или itertools. Я бы хотел по достоинству оценить эффективность и удобство чтения.
Я играл с вещами, которые начинаются так:
map(iter, d.values())
Очевидно, что просто дает мне список итераторы значений без каких-либо связанных с ними ключей, хотя, и я до сих пор не могу за петлю над этим списком и получить то, что я хочу.
Я использовал молнию, но возиться с частями вокруг него:) В любом случае, все. Я знал, что есть простой, маленький ответ. Благодарю. –