0

如果列表包含多于一组数据,如何查找特定值。

例子:

[{u'first_name': u'a, u'last_name': u'ab'}, {u'first_name': u'c', u'last_name': u'cd',}]

这是我在获取 json 时得到的响应。

我想检查用户“a”(名字)是否是姓氏“ab”的人。但是出现的顺序并不总是相同的。

我正在 python/robot 框架中编写此代码。

任何人都可以帮忙吗?

4

1 回答 1

0

如果我理解正确,您想检查某个姓氏是否已更新为正确的名字。由于顺序未知,并且名字可能会更改,因此姓氏也必须是唯一的。如果您必须为此使用字典列表,则需要循环:

userlist = [{u'first_name': u'a', u'last_name': u'ab'}, 
            {u'first_name': u'c', u'last_name': u'cd',}]

for user in userlist:
    if user['last_name'] == 'cd':
       if user['first_name'] == 'c':
           print "correct first name"
       else:
           print "incorrect first name"

但是,如果您有唯一的姓氏,那么将用户存储为字典会更有效,其中姓氏作为键,名字作为值:

if userdict['cd'] == 'c':
    print "correct first name"
else:
    print "incorrect first name"
于 2013-09-05T17:54:32.257 回答