Я разработал программу на Python, упорядочивающую данные в выровненных словарях.По мере увеличения размера dict программа замедляется из-за интенсивного поиска ключей.Глядя на структуру вложенных словарей, мне кажется, что «иерархический» подход может ускорить поиск ключей.Я не прав?
Является ли вложенный dict:
nested_dict = { 'dictA': {'key_1': 'value_1', 'key_2': 'value_2'},
'dictB': {'key_3': 'value_3', 'key_4': 'value_4', 'key_5': 'value_5'},
...
'dictZ': {'key_m': 'value_m', 'key_n': 'value_n'}}
быстрее сплющенного dict:
dictionary = {'key_1': 'value_1',
'key_2': 'value_2',
...
'key_n': 'value_n'}
Редактировать: Добавлено несколько примеров кода
Ниже кусок кода, который я обычно используюПрограмма довольно большая, поэтому нет конкретного кода для оценки
Назначение:
dictionary['key_1'] = dictionary2['key_a']
dictionary['key_3'] = dictionary2['key_a']*dictionary['key_4']
Условное выражение:
if( (0 == dictionary['key_1']) and
(dictionary2['key_b'] >= dictionary['key_3']) ):