这两个format()方法有不同吗?如果是这样,那么我如何知道他们属于哪个类别以及他们的行为有何不同?
format('abc')
和
'abc'.format()
最佳答案
您的第一个代码段使用 format
内置函数,记录在 docs 中对于内置函数。您的第二个代码段使用 str.format
,它是 str
类的方法,记录在 docs 中。对于标准类型。它们密切相关,但通信方式并不完全按照您处理事物的方式进行。
format(thing, 'format_spec')
相当于 '{:format_spec}'.format(thing)
。格式规范默认为空字符串,因此 format(thing)
相当于 '{:}'.format(thing)
,通常相当于 str(东西)
.
format('abc')
对应于 '{}'.format('abc')
,而不是 'abc'.format()
.结果恰好是相同的,因为 'abc'
是一个没有格式占位符的字符串。如果您使用 'I love braces{}'
或 3
而不是 'abc'
,您会看到不同的行为。
关于python - 以下两个 format() 方法有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52976900/