Python 如何使用多个数据检查字典中的值

Python 如何使用多个数据检查字典中的值,python,list,sorting,key,robotframework,Python,List,Sorting,Key,Robotframework,如果列表包含多组数据,如何查找特定值 例如: [{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框架中编写这段代码 有人能帮忙吗?如果我理解正确,您想检查某个姓氏是否已更新为正确的名字。由于顺序未知,而且名字可能会更改,所以姓氏必须是唯一的。

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

例如:

[{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框架中编写这段代码


有人能帮忙吗?

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

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"

请澄清。如果您有两个用户“a”,并且其中只有一个姓“ab”,您希望得到什么输出?如果不止一个姓“ab”怎么办?如果他们都不做呢?如果没有用户“a”怎么办?那是一个列表,不是字典。因此,请检查列表中的每个项目。我需要更新其中一个用户名,并检查是否已更新了正确的用户名,但是可能还会添加新的用户名,因此我无法确认顺序。我想检查“u'first_name'”的值是C。但我想确保它是针对{u'first_name':u'C',u'last_name':u'cd',}users的。这不起作用,因为它无法识别列表中的“last_name”。我收到的错误是,该值必须是整数
last\u name
不是列表,而是字典键。鉴于您的示例数据,上面的代码对我很有用。您需要详细说明如何得到这样的错误-您如何使用
姓氏