python - 以下两个 format() 方法有什么区别?

标签 python python-3.x

这两个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/

相关文章:

python - 如何使用 morphologyEx 和 drawContours 检测空的公园空间?

python - 如何在 bash 中自动完成我的 python 函数?

python - Django 过滤器模型一对多关系,价格之间的最大差异

python - 非常基本的 Python 问题(字符串、格式和转义)

python - pandas - 选择关于属性的最后 n 行数据框

python - 相当于python中的java.util.Scanner

python - 从字符串列表中获取最长持续时间

python - 如何使用此数据将元素附加到 DataFrame 中?

python-3.x - 如何通过连接操作获取表名

python - Django 从 get_queryset(self) 中排序搜索结果