【发布时间】:2017-05-28 14:18:41
【问题描述】:
我真的很好奇 Python 3 中的 :s 格式字符串。The documentation 说 !s 是 conversion 并且 :s 是 format_spec。
它还说!s 将适用str(),但它没有说关于:s 的任何类似内容。我认为它们之间没有显着差异,但我想确定一下。谁能澄清这些?
一些代码示例:
print("{!s}".format("this"))
print("{:s}".format("that"))
# I want to be sure that these two are processed identically internally
这仍然令人困惑,但让我用我自己(外行)的话来总结一下。
-
type("whatever".format)始终为str。 - 如果您想在格式化之前将对象转换为
str,请使用!s。 -
:s表示在某些内部格式化过程中,对象(或转换后的对象)将被视为str。这是默认的format_spec。
这里有什么问题吗?
【问题讨论】:
标签: python string python-3.x string-formatting