描述问题
format的用法,代码中的!r !s分别是format的哪部分用法
我查阅文档, 未能找到这部分的说明(https://docs.python.org/3/lib...
使用搜索引擎,也不知如何组织关键词
上下文环境
Python3
重现
拷贝代码
运行之
相关代码
class Pair: def __init__(self, x, y): self.x = x self.y = y def __repr__(self): return 'Pair({0.x!r}, {0.y!r})'.format(self) def __str__(self): return '({0.x!s}, {0.y!s})'.format(self) >>> p = Pair(3, 4) >>> p Pair(3, 4) # __repr__() output >>> print(p) (3, 4) # __str__() output
!r 就是 repr
!s 就是 str
!a 就是 ascii
Three conversion flags are currently supported: '!s' which calls str() on the value, '!r' which calls repr() and '!a' which calls ascii().
Some examples:
"Harold's a clever {0!s}" # Calls str() on the argument first
"Bring out the holy {name!r}" # Calls repr() on the argument first
"More {!a}" # Calls ascii() on the argument first