我们知道 :
str.format('{:+>10}', 'sometext')
Run Code Online (Sandbox Code Playgroud)
将返回 :
'++sometext'
Run Code Online (Sandbox Code Playgroud)
或:
'{:+>10}'.format('sometext')
将返回 '++sometext'
我的问题,是否可以覆盖类实例的格式方法......我已经尝试过:
class A:
def __format__(self, spec):
return spec.format(self)
Run Code Online (Sandbox Code Playgroud)
然后实例化它:
a = A()
a.__format__('{:+>20}')
Run Code Online (Sandbox Code Playgroud)
返回'+>20'
怎么会发生这种情况...谢谢之前