首页 > 解决方案 > 在 Python 的 string.format 中,%r 等价于什么?

问题描述

我习惯于使用operator%r进行字符串格式化%,但是如何使用该format()方法获得相同的结果?

>>> x = 1 + 1e-14
>>> x
1.00000000000001
>>> '%r' % x
'1.00000000000001'
>>> '{0}'.format(x)
'1.0'

标签: pythonstringpython-2.7formatting

解决方案


啊,在第一次阅读的文档中错过了它;这是!r转换。(请参阅文档中的示例部分

>>> '{0!r}'.format(x)
'1.00000000000001'

推荐阅读