【发布时间】:2016-06-13 01:35:10
【问题描述】:
在 pyyaml 文档中查看此代码,为什么 "Dice(%s,%s)" % self 有效?有两个 %s 但只有一个 var self?
>>> class Dice(tuple):
... def __new__(cls, a, b):
... return tuple.__new__(cls, [a, b])
... def __repr__(self):
... return "Dice(%s,%s)" % self
>>> print Dice(3,6)
Dice(3,6)
http://pyyaml.org/wiki/PyYAMLDocumentation#Constructorsrepresentersresolvers
【问题讨论】:
-
因为
self是一个包含两个项目的tuple。 -
啊……对。谢谢!
-
ekhumoro - 听起来你应该将此作为答案而不是评论 - 并因此而受到赞誉。
标签: python repr string-substitution