小编Wir*_*kti的帖子

有没有办法重写 __format__ 方法

我们知道 :

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'怎么会发生这种情况...谢谢之前

python string

1
推荐指数
1
解决办法
3841
查看次数

标签 统计

python ×1

string ×1