0

追溯:

  File 'LRUCache.py', line 32, in get_value
  File 'lib\collections.py', line 157, in pop
  File 'lib\collections.py', line 88, in __delitem__
UnboundLocalError: local variable 'link_next' referenced before assignment

LRUCache.get

    try:
        value = self.cache.pop(key)
        self.cache[key] = value
        return value
    except KeyError:
        return None

OrderedDict 中的代码

    def __delitem__(self, key, dict_delitem=dict.__delitem__):
        dict_delitem(self, key)
        link_prev, link_next, key = self.__map.pop(key)
        link_prev[1] = link_next
        link_next[0] = link_prev

并且 UnboundLocalError 在最后一行意外发生。

它与关闭无关。

我不知道为什么。超出我的想象。

4

0 回答 0