要自定義format
函數的格式化規則,可以通過定義一個新的類并實現__format__
方法來實現。下面是一個簡單的示例:
class CustomFormatter:
def __init__(self, value):
self.value = value
def __format__(self, format_spec):
if format_spec == 'custom':
return f'Custom formatting: {self.value}'
else:
return format(self.value, format_spec)
# 使用自定義格式化規則
value = 42
custom_value = CustomFormatter(value)
print(format(custom_value, 'custom')) # 輸出: Custom formatting: 42
# 使用內置的格式化規則
print(format(custom_value, 'd')) # 輸出: 42
在上面的示例中,我們定義了一個CustomFormatter
類,并在其中實現了__format__
方法。當調用format
函數時,如果傳入的格式化規則為custom
,則會執行自定義的格式化操作,否則會使用內置的格式化規則。