Иерархия объектов в питоне
Я хочу сделать иерархию в питоне, в конце которой будут лежать функции, что то типа папок в которых лежат функции, выглядеть должно примерно так: папка_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()