Иерархия объектов в питоне

Я хочу сделать иерархию в питоне, в конце которой будут лежать функции, что то типа папок в которых лежат функции, выглядеть должно примерно так: папка_1.папка_2.папка_3.функция_4

Иерархия выглядит примерно так:

папка
-папка2
--функция
--функция2
-папка3
--функция3
--функция4

Есть ли способ это сделать, чтоб обращение происходило по полному пути папка_1.папка_2.папка_3.функция_4?


Ответы (1 шт):

Автор решения: geo

Насколько я понимаю, - это какое-то задание из школьной программы на композицию объектов в ООП.

Тогда, вы просто можете продемонстрировать это так:

class UserDir:
    def __init__(self, dir = None):
        self.__dir = dir

    def function4(self, *args, **kwargs):
        print('hello, it is function4')

    @property
    def dir(self):
        return self.__dir

dir_3 = UserDir()
dir_2 = UserDir(dir = dir_3)
root  = UserDir(dir = dir_2)

root.dir.dir.function4()
→ Ссылка