Как проитерировать ключи в словаре неизвестной вложенности в python
Сап, народ. С прошлой темы про содержание своего проекта много для себя подчеркнул. Решил попробовать разделить проект на файлы и импортировать их в основной. Щас вроде получше.
Есть такая ситуация. У меня есть функция, допустим
def find_all_keys(input_dict):
keys_list = [i for i in input_dict.keys() if i.startswith("lib")]
return keys_list
Пример условный, понятно, что для такой мелочи функция может быть не нужна. Так вот я буду в эту функцию загонять по одному объекту - словарю, в котором мне заранее неизвестно количество пар. Но если с этим я могу еще заранее продумать, как посчитать количество итераций для дальнейшего использования списка из возврата, то в случае с итерацией, когда внутри словаря могут быть вложенные словари неизвестной глубины и неизвестного количества, я не знаю что делать. Каким образом я могу проще всего решить такой случай? В итоге нужно получить список (именно список, а не множество) со всеми ключами словаря включая вложенные словари любой глубины.