Discuss / Python / 打卡

打卡

Topic source

还是手动敲敲代码加深印象

from collections import OrderedDict

class LastUpdatedOrderedDict(OrderedDict):

    def __init__(self, capacity):

        OrderedDict.__init__(self)

        self.capacity = capacity

    def __setitem__(self, key, value):

        if key in self:

            del (self[key])

        if len(self) == self.capacity:

            print('remove:', self.popitem(last=False))

        OrderedDict.__setitem__(self, key, value)

d = LastUpdatedOrderedDict(2)

d['1'] = '0'

d['2'] = '2'

d['1'] = '1'

d['3'] = '3'

print(d)


  • 1

Reply