如何为“int”重新定义“uu add”方法?

2021-01-26 11:10:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我想为int重新定义__add__方法,这样用法如下:

 >> 1+2
 => "1 plus 2"

 >> (1).__add__(2)
 => "1 plus 2"

我试过了:

^{2}$

但是,它引发了一个例外:

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: can't set attributes of built-in/extension type 'int'

有人知道为什么我不能像这样重新定义__add__方法吗?还有别的办法吗?在