Я понимаю, что вы можете использовать __getattr__()
для доступа к атрибутам, которые не существуют как атрибуты этого класса. Однако я хотел сделать то же самое с функциями.
Я читал, что python обрабатывает атрибуты и методы одинаково, поэтому вы также используете __getattr__()
для методов. Это правда?
class container:
def __init__(self, data):
self.data = data
def __getattr__(self, item):
##Don't know the code to put here vv
result = getattr(self.data, item)
class data:
def printHello(self):
print("hello")
def printString(self, string):
print(string)
def main():
someData = data()
someContainer = container(someData)
someContainer.printString("sup")
main()
Цель: Я хочу написать container.printHello()
и заставить его вызвать container.data.printHello()
. Я также хотел бы получить решение, которое позволило бы передавать параметры в printString()
. Как бы я go об этом?
ПРИМЕЧАНИЕ: это упрощение. На самом деле, у меня есть огромное количество методов, которые я постоянно добавляю, удаляю и изменяю имена методов при разработке своей программы