星号在做什么?

时间:2019-06-11 02:46:38

标签: python-3.x

有人可以解释一下星号和!r在这里做什么吗?

我刚刚在互联网上遇到了这个片段。这是一个称为多项式的类,它使用三个系数实例化。我通过互联网浏览了一下,发现__repr__是一种表示形式,但是星号和!r在这里到底是如何工作的?

def __repr__(self):
    return 'Polynomial(*{!r})'.format(self.coeffs)

1 个答案:

答案 0 :(得分:0)

星号在那里没有特殊含义;它只是在格式化的字符串中打印星号字符。

!r是一个conversion flag,它调用参数的.repr()。因此,您问题中格式字符串的结果字符串将等效于以下内容:

'Polynomial(*' + repr(self.coeffs) + ')'