Python 使用_格式_方法

Python 使用_格式_方法,python,python-3.x,Python,Python 3.x,我已经编写了一个模拟方法来测试\uuuuuu格式\uuuuuu的使用情况。例如: class Name: def __init__(self, name='tom', age=25): self.name = name self.age = age def __format__(self, format_spec): if format_spec == "age": return f'{self.name.c

我已经编写了一个模拟方法来测试
\uuuuuu格式\uuuuuu
的使用情况。例如:

class Name:
    def __init__(self, name='tom', age=25):
        self.name = name
        self.age = age
    def __format__(self, format_spec):
        if format_spec == "age":
            return f'{self.name.capitalize()} is {self.age} years old.'
        elif format_spec == 'name':
            return f'The name of the person of this instance is {self.name.capitalize()}'

>>> n=Name()
>>> format(n, 'age')
'Tom is 25 years old.'

这是如何使用
\uuu格式\uuuu
方法的合法示例吗?也就是说,要传递“人类可读”类型的
格式\u spec
?或者该方法应该接收输入,例如
“+,.4f”
。我还没有看到太多实际使用的
\uuuuuuuuuuuuuuuuuuuuu
方法的例子,所以我很好奇一些非琐碎的例子可能是什么。

对于
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu格式>/code>来说,根据格式规范提供完全不同的信息是非常罕见的。顾名思义,它通常只是用来控制信息的显示格式。@user2357112您能解释一下“不同的信息取决于格式规范”是什么意思吗?您是指python提供的格式规范,例如中的?您阅读了文档吗?您的
\uuuu格式\uuuuu
在一种情况下提供年龄信息,在另一种情况下提供姓名信息。这很不寻常。