在词典及其位置中找到价值的更有效方法

时间:2016-12-14 08:21:54

标签: python dictionary

我有一个字典,其中包含(大致)6个元素,每个元素如下所示:

我想要做的是找到一个特定的域(我通过一个方法),如果它存在,它会存储关键字及其在对象中的位置。我试过以下

def parseGoogleResponse(response, website):

    i = 0 
    for item in response['items']:
      if(item['formattedUrl'] == website):
           print i 
           break; 
      i++

这种方法似乎有点乏味,i i = 10也保持不变,我非常确定这是一种更有效的方法。我还必须考虑到,如果第一次找不到网站,它会查询API最多5页,每页包含6个搜索结果,所以我不知何故必须计算位置,如果它在不同的页面。

任何想法

1 个答案:

答案 0 :(得分:1)

Python中的字典不是有序的。与list类型对象不同,无法在字典中找到某些位置。

您可以使用以下内容轻松检查字典中是否存在值:

if website in response['items'].values():
    # If you enter this section, you know it's in the dictionary
else:
    # If you end up here, it isn't in the dictionary