我想直接调用一个类的实例,
示例-
class A(Object):
def __init(self,temp):
super(A, self).__init__()
self.val = temp
def get_val(self):
return self.val
现在,创建一个实例-
my_var = A('something')
print(my_var.get_val())
但是我只想使用-
打印值print(my_var) or print(my_var())
这可能吗?
答案 0 :(得分:1)
您可以覆盖__str__()
方法。直接打印对象引用时,它在内部调用obj.__str__()
。因此,您可以通过重写上述方法来实现所需的功能。
class A():
def __init__(self,temp):
self.val = temp
def get_val(self):
return self.val
def __str__(self):
return self.get_val()
my_var = A('something')
print my_var
输出:
something