如何针对我的类定制type()
调用的输出?你知道吗
我正在类中实现__add__
方法。如果用户试图不正确地使用它,我将用以下消息引发TypeError
:
err_msg = "unsupported operand type(s) for -: '{}' and '{}'"
raise TypeError(err_msg.format(type(self), type(other)))
输出内容如下:
TypeError: unsupported operand type(s) for +: '<type 'instance'>' and '<type 'int'>'
我需要怎么做才能让它改为读'<type 'my_class'>'
?你知道吗
您不想更改
type
返回的内容。您希望使您的类成为一个新样式的类(除了许多其他优点外),这意味着这个类对象的字符串表示将提到它的名称,就像所有正确的类型(包括但不限于内置类型)一样。改变至
如果
my_class
继承自另一个本身是旧样式的类,则将改为类new stlye。你知道吗简单的答案是不要对我的类使用
type()
,而是使用一个字符串:相关问题 更多 >
编程相关推荐