Как получить доступ к словарным ключам в словаре? - PullRequest
0 голосов
/ 01 февраля 2020

У меня есть некоторый код, который я получу, если напечатаю dict. json ():

dict.json() =  {'random_string': { 'a': 'random_value_int',
                     'b': 'random_value__strings,
                     'c': 000,
                     'd': 321,
                     'e': ['ABC', 'CBA']},
     'random_string_2': { 'a': 'random_value_int_2',
                     'b': 'random_value__strings_2,
                     'c': 000,
                     'd': 321,
                     'e': ['ABC', 'CBA']}}

Я пытаюсь понять, как вытащить 'random_string', 'a', 'random_value_strings' и ['AB C', 'CBA']. Кроме того, я пытаюсь выяснить, как сохранить каждый из ключей / значений в списке для использования в будущем. Есть предложения?

1 Ответ

1 голос
/ 01 февраля 2020

Вы разместили словарь nested dictionary, который является словарем или словарями внутри словаря.

my_dict = {'random_string': { 'a': 'random_value_int',
                     'b': 'random_value__strings',
                     'c': 000,
                     'd': 321,
                     'e': ['ABC', 'CBA']},
     'random_string_2': { 'a': 'random_value_int_2',
                     'b': 'random_value__strings_2',
                     'c': 000,
                     'd': 321,
                     'e': ['ABC', 'CBA']}}

Я использовал вложенный словарь random_string для приведенных ниже примеров.

Сначала дайте нам доступ к ключам:

Вам просто нужно go углубиться в словарь, пока не дойдете до ключа, к которому вы хотите получить доступ.

>>> my_dict['random_string']
{'a': 'random_value_int', 'b': 'random_value__strings', 'c': 0, 'd': 321, 'e': ['ABC', 'CBA']}
>>> my_dict['random_string']['a']
'random_value_int'
>>> my_dict['random_string']['e']
['ABC', 'CBA']

Хранение ключа: пары значений в списке

Существует встроенный метод словаря под названием items(), который возвращает список из (key,value) пар в виде tuple типа dict_items.

Вы можете преобразовать его в тип list, используя функцию list().

>>> list_key_val = list(my_dict['random_string'].items())
>>> list_key_val
[('a', 'random_value_int'), ('b', 'random_value__strings'), ('c', 0), ('d', 321), ('e', ['ABC', 'CBA'])]

Надеюсь, это поможет!

...