__init__が呼び出されずAttributeErrorと表示される。
初歩的なミスなのかもしれませんが、どなたか教えてください・・・
以下のコード↓
class Set:
def __init__(self, value = []):
self.data = []
self.concat(value)
def intersect(self, other):
res = []
for x in self.data:
if x in other:
res.append(x)
return Set(res)
def union(self, other):
res = self.data[:]
for x in other:
if not x in res:
res.append(x)
return Set(res)
def concat(self, value):
for x in value:
if not x in self.data:
self.data.append(x)
def __len__(self): return len(self.data)
def __getitem__(self, key): return self.data[key]
def __and__(self, other): return self.intersect(other)
def __or__(self, other): return self.union(other)
def __repr__(self): return 'Set:' + `self.data`
を書いたうえで、次に↓
>>> x = Set([1,2,3,4])
と実行しますと↓
Traceback (most recent call last):
File "", line 1, in
x = Set([1,2,3,4])
File "", line 4, in init
self.concat(value)
AttributeError: Set instance has no attribute 'concat'
と表示されます。
concatを属性として持っていないというエラーだと思うのですが、この場合の対処法または、コードの不備等があれば教えて頂きたいです。
宜しくお願い致します。