【发布时间】:2020-12-15 02:03:31
【问题描述】:
我有多个类,如果我实例化其中的任何一个,我希望能够通过为这些类重新定义 str 方法来“打印”实例化的对象。 str 方法对于所有类都是完全相同的,我不想在每个类下都重复这个方法。如何为所有类执行此操作,而不必在每个类下定义 str?类装饰器会在这里提供帮助吗?
class testClass1:
def __init__(self, value):
self.value = value
def __str__(self):
return(self.value + 5)
class testClass2:
def __init__(self, value):
self.value = value
def __str__(self):
return(self.value + 5)
test1 = testClass1(2)
print(test1)
【问题讨论】:
-
你可以创建一个类装饰器,或者你使用继承。
标签: python class object methods printing