python内置方法__str__
分析
- 此方法在打印对象的时候会自动执行此方法。
- 此方法内部一般return一个值。
class A:
def __str__(self):
return "this is in str"
obj = A()
print(obj)结果:
this is in str
具体分析
如果方法内部不是return值,而是其他执行方法?
class A:
def __str__(self):
print("A")
obj = A()
print(obj)结果:
A 报错!
问题:测试return返回值类型?
class strtest:
def __init__(self):
self.val = 1
def __str__(self):
return self.val
if __name__ == "__main__":
st=strtest()
print(st)结果:
说明:
- __str__():方法存在类中。
- 方法内部一般return字符串类型的值,其他类型会报错!
- 在print打印对象的时候,此方法会自动执行。
解决报错:
class strtest:
def __init__(self):
self.val = 1
def __str__(self):
return str(self.val)
if __name__ == "__main__":
st=strtest()
print(st)结果:
1

浙公网安备 33010602011771号