синтаксис для создания словаря в другой словарь в Python
161383 просмотра
3 ответа
Возможный Дубликат:
синтаксис для вставки одного списка в другой список в Python
Как может быть синтаксис для создания словаря в другой словарь в Python
Автор: Compuser7 Источник Размещён: 13.11.2019 11:33Ответы (3)
101 плюса
Вы можете объявить словарь внутри словаря, вложив контейнеры {}:
d = {'dict1': {'foo': 1, 'bar': 2}, 'dict2': {'baz': 3, 'quux': 4}}
И тогда вы можете получить доступ к элементам, используя синтаксис []:
print d['dict1'] # {'foo': 1, 'bar': 2}
print d['dict1']['foo'] # 1
print d['dict2']['quux'] # 4
Учитывая вышесказанное, если вы хотите добавить другой словарь в словарь, это можно сделать так:
d['dict3'] = {'spam': 5, 'ham': 6}
или если вы предпочитаете добавлять элементы во внутренний словарь один за другим:
d['dict4'] = {}
d['dict4']['king'] = 7
d['dict4']['queen'] = 8
Автор: kindall
Размещён: 28.09.2010 10:46
8 плюса
dict1 = {}
dict1['dict2'] = {}
print dict1
>>> {'dict2': {},}
это обычно называют вложением итераторов в другие итераторы, я думаю,
Автор: Blazer Размещён: 28.09.2010 10:423 плюса
Вы хотите вставить один словарь в другой, как один из его элементов, или вы хотите ссылаться на значения одного словаря по ключам другого?
Предыдущие ответы уже охватывали первый случай, когда вы создаете словарь в другом словаре.
Чтобы повторно ссылаться на значения одного словаря в другой, вы можете использовать dict.update
:
>>> d1 = {1: [1]}
>>> d2 = {2: [2]}
>>> d1.update(d2)
>>> d1
{1: [1], 2: [2]}
Изменение значения, которое присутствует в обоих словарях, будет видно в обоих:
>>> d1[2].append('appended')
>>> d1
{1: [1], 2: [2, 'appended']}
>>> d2
{2: [2, 'appended']}
Это то же самое, что скопировать значение или создать из него новый словарь, т.е.
>>> d3 = {1: d1[1]}
>>> d3[1].append('appended from d3')
>>> d1[1]
[1, 'appended from d3']
Автор: intuited
Размещён: 29.09.2010 12:49
Вопросы из категории :
- python Обработка XML в Python
- python Как я могу использовать Python itertools.groupby ()?
- python Python: На какой ОС я работаю?
- python Как я могу создать непосредственно исполняемое кроссплатформенное приложение с графическим интерфейсом на Python?
- python Вызов функции модуля с использованием его имени (строки)
- python Звук Питона («Колокол»)
- python Regex и unicode
- python Создать зашифрованный ZIP-файл в Python
- python Создайте базовый итератор Python
- python Функция транспонирования / распаковки (обратная сторона zip)?
- python Каков наилучший способ разбора аргументов командной строки?
- python Формат чисел в строки в Python
- python Как загрузить файл через HTTP с помощью Python?
- python Is there any difference between "foo is None" and "foo == None"?
- python Как запустить сценарий Python как службу в Windows?
- python Нахождение каких методов у объекта Python
- python Как отсортировать список строк?
- python Что ** (двойная звезда / звездочка) и * (звездочка / звездочка) делают для параметров?
- python What is the purpose of class methods?
- python Какой лучший способ вернуть несколько значений из функции в Python?