-1

我正在写两个动画类,一个是字典,另一个是列表?遇到第二个问题,dict 的工作方式如下,

class Field( dict ):        
    def __keys__(self): 
        self.k = self.keys()
        return list(self.k)

    def __setattr__( self, attr, value):
        self[attr] = value

我想而不是添加为下一个,

class Store(list):

相反,我想对dict()某些索引对象和列表子参数使用相同的高性能

实现数据树的最正确方法是什么?有任何想法吗?

4

1 回答 1

2

我要给出一个答案。我认为您希望快速访问某些对象集合,同时能够使它们保持有序。您可能能够摆脱像ordereddict. 如果没有,这样的事情可能会接近。这将取决于您的数据。

class Container(object):
  def __init__(self):
    self.data = []
    self.byid = {}

  def setData(self, listofdicts):
    for item in listofdicts:
      id = item['id'] # Something here that's meaningful.
      self.data.append(item)
      self.byid[id] = item

  def getByPos(self, idx):
    return self.data[idx]

  def getById(self, itemid):
    return self.byid[itemid]
于 2012-06-26T04:12:54.590 回答