@Yrets169

Как объеденить два списка в список со словарей циклом?

cols = ['id', 'name', 'pass']
old_list = [[1, 'вася', '123'],[2,'mike','321'],[3,'john','password']]
g_dict = []
for i in old_list:
    g_dict.append(i)
    new_dict = dict(zip(cols, g_dict))


данным кодом получаю результат
{
 'id': [1, 'вася', '123'],
 'name': [2, 'mike', '321'],
 'pass': [3, 'john', 'password']
}


Как получить такой результат?
[
{'id': 1,'name': 'вася', 'pass':'123'},
{'id':2, 'name':'mike', 'pass':'321'},
{'id':3, 'name':'john', 'pass':'password'}]
  • Вопрос задан
  • 73 просмотра
Решения вопроса 2
0xD34F
@0xD34F
new_list = [ dict(zip(cols, n)) for n in old_list ]
Ответ написан
Комментировать
drygdryg
@drygdryg
Python-разработчик
Циклом for:
cols = ['id', 'name', 'pass']
old_list = [[1, 'вася', '123'],[2,'mike','321'],[3,'john','password']]
g_dict = []
for item in old_list:
    g_dict.append(dict(zip(cols, item)))

Генератором списка:
cols = ['id', 'name', 'pass']
old_list = [[1, 'вася', '123'],[2,'mike','321'],[3,'john','password']]
g_dict = [dict(zip(cols, item)) for item in old_list]
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы