Предположим, у меня есть многоуровневый словарь, подобный этому
mydict = {
'first': {
'second': {
'third': {
'fourth': 'the end'
}
}
}
}
Я бы хотел получить к нему доступ
test = get_entry(mydict, 'first.second.third.fourth')
То, что я до сих пор
def get_entry(dict, keyspec):
keys = keyspec.split('.')
result = dict[keys[0]]
for key in keys[1:]:
result = dict[key]
return result
Есть ли более эффективные способы сделать это? Согласно% timeit, время выполнения функции равно 1.26us, при этом доступ к словарю осуществляется стандартным способом
foo = mydict['first']['second']['third']['fourth']
берет 541ns. Я ищу способы обрезать его до диапазона 800ns, если это возможно.
Спасибо