Как сделать словарь из списков
У меня есть список с ключами и список со значениями ключи:
k = [3, 1, 4, 2, 7, 5, 6]
z = [
[3, [[2, 4], [0, 6], [2, 2]]],
[2, [[1, 4], [8, 7]]],
[3, [[0, 3], [7, 6], [8, 3]]],
[3, [[4, 2], [1, 1], [7, 7]]],
[2, [[6, 4], [7, 0]]],
[1, [[6, 6]]]]
[1, [[4, 9]]
]
Мне нужно создать цикл, который бы делал словарь для элементов, чтобы было так:
{k[0]:z[0], k[1]:z[1]...}и тд до конца
Пыталась через цикл for, но мне он делает несколько словарей, а мне нужен один большой. Помогите пожалуйста!
Также нужно, чтоб каждое ключ-значение было на новой строчке, через width = 1 не работает.
Ответы (2 шт):
Автор решения: Nickolay Chistov
→ Ссылка
Думаю такой код будет правильным:
k = [3, 1, 4, 2, 7, 5, 6]
z = [
[3, [[2, 4], [0, 6], [2, 2]]],
[2, [[1, 4], [8, 7]]],
[3, [[0, 3], [7, 6], [8, 3]]],
[3, [[4, 2], [1, 1], [7, 7]]],
[2, [[6, 4], [7, 0]]],
[1, [[6, 6]]],
[1, [[4, 9]]]
]
result = {}
for index in range(len(k) - 1):
result[k[index]] = z[index]
PS: Я поправил список z, потому-что он был не правильно построен. Выходила IndentationError
PSS: У меня цикл for работает, если я правильно понял ваш вопрос.
Автор решения: eri
→ Ссылка
In [4]: k = [3, 1, 4, 2, 7, 5, 6]
...: z = [
...: [3, [[2, 4], [0, 6], [2, 2]]],
...: [2, [[1, 4], [8, 7]]],
...: [3, [[0, 3], [7, 6], [8, 3]]],
...: [3, [[4, 2], [1, 1], [7, 7]]],
...: [2, [[6, 4], [7, 0]]],
...: [1, [[6, 6]]],
...: [1, [[4, 9]]]
...: ]
In [5]: dict(zip(k,z))