【发布时间】:2011-02-10 01:07:08
【问题描述】:
为什么我在创建继承自 str(或也继承自 int)的类时遇到问题
class C(str):
def __init__(self, a, b):
str.__init__(self,a)
self.b = b
C("a", "B")
TypeError: str() takes at most 1 argument (2 given)
如果我尝试使用int 而不是str,也会发生同样的情况,但它适用于自定义类。我需要使用__new__ 而不是__init__?为什么?
【问题讨论】:
标签: python string inheritance integer new-operator