format方法显示的实例的魔法函数_repr_或_str_的返回值,哪怕没有设定该魔法方法,也会返回一个默认值:
class A:
def __init__(self,num):
self.a=num
b=A(1)
print(b)
print('{}'.format(b)
如果定义了_repr_方法,则如下:
class A:
def __init__(self,num):
self.a=num
def __repr__(self):
return str(self.a)
b=A(1)
print(b)
print('{}'.format(b)
如果定义了_str__方法,则如下:
class A:
def __init__(self,num):
self.a=num
def __str__(self):
return str(self.a)
b=A(1)
print(b)
print('{}'.format(b)
请注意区别,详细内容请参见:3. Data model - Python 3.8.6rc1 documentationdocs.python.org
希望能帮到你