Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 05.06.2015
Сообщений: 9
1

Как из вложенного списка сделать словарь ?

05.06.2015, 17:55. Просмотров 1304. Ответов 1
Метки нет (Все метки)

Нашел скрипт не могу понять как он работает.
Объясните пожалуйста подробно.
Python
1
2
3
4
5
6
7
8
dict = {}
for y in [["First","Second"]]:
    level = dict
    for x in y:
        if x not in level:
            level[x] = {}
        print dict
        level = level[x]
В логах
{'First': {}}
{'First': {'Second': {}}}

Насколько я понимаю level это ссылка на словарь dict.
Как мы получили такой словарь {'First': {'Second': {}}} ?

Почему если написать
Python
1
2
3
4
5
6
7
dict = {}
for x in ["First","Second"]:
    level = dict
    if x not in level:
        level[x] = {}
    level = level[x]
print dict
То лог будет {'Second': {}, 'First': {}}

Почему в первом случае {'First': {'Second': {}}}
а во втором {'Second': {}, 'First': {}}

не понимаю что происходит с словарем на каждом этапе итерации
спасибо!!!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.06.2015, 17:55
Ответы с готовыми решениями:

Как получить элемент списка вложенного в список?
Как из списка ,] Достать 4?

Привязка значений вложенного списка из родительского списка
Доброго времени суток. Есть объект списка Product, обладающий другим списком: public class...

Как сделать перебор результатов вложенного запроса
Есть таблица в которую пишутся данные в таком формате ник|ip|time jok|37.213.209.176|1366690704...

Как сделать LIMIT для вложенного цикла SELECT
Приветствую! У меня есть вот такой запрос: SELECT wp_rg_lead.date_created, wp_rg_lead_detail.*...

1
Модератор
Эксперт NIX
2622 / 1969 / 663
Регистрация: 02.03.2015
Сообщений: 6,335
05.06.2015, 18:29 2
Это такая мода: написать бессмысленную хрень и спрашивать почему оно так работает?
Python
1
2
3
my_list = [["First", "Second"], ["Third", "Fourth"]]
my_dict = dict(my_list)
print(my_dict)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.06.2015, 18:29

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как сделать надписи внутри вложенного агента не перемещаемыми?
Здравствуйте! Вопрос в следующем: у меня есть вложенный агент, например, Car. Данный агент может...

удаление из списка, вложенного списка
Написать программу выделения списков на заданном уровне и удаления заданного их количества в...

Создание вложенного списка
Доброго времени суток. У меня возникло затруднение в написании функции, которая создает вложенный...

Создание вложенного списка
Нужно что бы в каждом элементе списка находился внутренний элемент ListView. На картинке показан 1...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.