python集合数据对象_基于属性的随机访问对象集合的Python数据结构

我需要一个对象的集合,可以通过每个对象的某个(唯一)属性进行查找。现在我正在使用一个dictionary将dictionary键分配给属性。

下面是我现在所拥有的一个例子:class Item():

def __init__(self, uniq_key, title=None):

self.key = uniq_key

self.title = title

item_instance_1 = Item("unique_key1", title="foo")

item_instance_2 = Item("unique_key3", title="foo")

item_instance_3 = Item("unique_key2", title="foo")

item_collection = {

item_instance_1.key: item_instance_1,

item_instance_2.key: item_instance_2,

item_instance_3.key: item_instance_3

}

item_instance_1.key = "new_key"

现在这似乎是一个相当麻烦的解决方案,因为key不是对属性的引用,而是在赋值时获取key属性的值,这意味着:字典的键以object属性和

更改对象属性时,字典键不会更新。在

使用列表和遍历对象似乎更低效。在

那么,对于这个特殊的情况,有没有比dict更适合的数据结构呢?一组对象根据某个对象属性随机访问?在

这将需要与Python2.4一起工作,因为这正是我一直坚持的(在工作中)。在

如果不是很明显的话,我还是Python新手。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值