|
发表于 2020-6-18 11:44:54
|
显示全部楼层
这样就不会报错了:
- class Count:
- def __init__(self,*num):
- self.list1=[x for x in num]
- self.dict1={}.fromkeys(range(len(self.list1)),0)
- def __len__(self):
- print('自动调用了 len 方法~')
- return self.list1.__len__()
- def __getitem__(self,key):
- self.dict1[key]+=1
- return self.list1[key]
- def __setitem__(self,key,value):
- self.dict1[len(self.list1)+1]=0
- self.list1.append(value)
- def __delitem__(self,key):
- self.dict1.pop(key)
- self.list1.pop(key)
- self.dict1=dict(zip(list(range(len(self.list1))),list(self.dict1.values)))
- def reverse(self):
- self.list1.reverse()
- list2=list(self.dict1.values).reverse()
- self.dict1=dict(zip(list(range(len(self.list1))),list2))
- def counter(self,key):
- return self.dict1[key]
- c = Count(1,2,3,4,5)
- print(len(c))
复制代码 |
|