用于存储和检索信息的高效数据结构

时间:2014-08-01 11:56:19

标签: python

鉴于以下信息:

item : Apple
price : 120

item : Orange
price : 90

item : Banana
price : 60

应该使用什么数据结构来存储python中的上述数据。如何使用该数据结构获得香蕉的价格?

我的方法: 我认为它可以使用字典列表存储。

List = [{'item':'Apple','price':120},{'item':'Orange','price':90},{'item':'Banana','price':60}]

#Retrieving price of banana

for i in range(len(List)):
    if List[i]['item']=='Banana':
        price = List[i]['price']
        print(price)

上述方法有什么问题?或者对于上述问题有没有更好的方法?

1 个答案:

答案 0 :(得分:5)

您不需要列表;您可以将所有商品存储在一个字典中,将商品名称映射到价格:

item_prices = {
    'Apple': 120,
    'Orange': 90,
    'Banana': 60,
}

print(item_prices['Banana'])

现在你不再需要循环了。并且测试项目是否存在就像if 'Banana' in item_prices:一样简单,不需要完整扫描。