有没有内置(或非常简单)的方法让python字典以与deque类似的方式工作.
我需要它具有最大大小,并且当添加新密钥时,如果达到最大长度,则删除首先添加的密钥.作为自定义类实现起来应该不会太难,但总是首选使用内置类.
我正在使用Python 3.6,如果有任何帮助.
这听起来像是一个变种OrderedDict
.
class FixSizeOrderedDict(OrderedDict):
def __init__(self, *args, max=0, **kwargs):
self._max = max
super().__init__(*args, **kwargs)
def __setitem__(self, key, value):
OrderedDict.__setitem__(self, key, value)
if self._max > 0:
if len(self) > self._max:
self.popitem(False)
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
721 次 |
最近记录: |