from collections.abc import Sequence
class Bar:
def __init__(self, total):
self.num = [None] * total
def __setitem__(self, key, value):
self.num[key] = value
def __getitem__(self, key):
return self.num[key]
def __len__(self):
l = len(self.num)
return l
def __reversed__(self):
lst = sorted(self.num, reverse=True)
return lst
n = Bar(3)
print(n.num)
n.__setitem__(0, 2)
n.__setitem__(1, 8)
n.__setitem__(2, 1)
print(n.num)
n.__getitem__(1)
print(n.num[1])
new_n = n.__reversed__()
print(new_n)
输出结果:
[None, None, None]
[2, 8, 1]
8
[8, 2, 1]