如何在python词典中使用get()获得特定值

时间:2019-06-11 08:48:54

标签: python

我有100多个python字典,其中我必须使用keys()函数从中打印出特定的值。下面是其中之一

 u'object_bucket': [{u'TagSet': [{u'Key': u'Chargeback_ID', u'Value': u''},
                                 {u'Key': u'Chargeback_Owner',
                                  u'Value': u''},
                                 {u'Key': u'Description', u'Value': u''},
                                 {u'Key': u'Contact_Email',
                                  u'Value': u'xyz@email.com'},
                                 {u'Key': u'Project_Name', u'Value': u'ae'}],

我使用了for循环,一次通过所有字典,并尝试打印输出。

 for tag in bucket['TagSet']:
     print(tag.keys('Value'))
[u'Value', u'Key']
[u'Value', u'Key']
[u'Value', u'Key']
[u'Value', u'Key']
[u'Value', u'Key']

所需的输出:

Contact_Email: xyz@email.com

3 个答案:

答案 0 :(得分:0)

result = [['{}:{}'.format(i['key'],i['Value'])] for i in bucket['TagSet'] if i['Key'] == "Contact_Email"]

答案 1 :(得分:0)

 for tag in bucket['TagSet']:
    if tag['Key']=='Contact_Email':
      print(tag['Key'],':',tag['Value'])

答案 2 :(得分:0)

您只想打印电子邮件地址吗?如果是这样,它将这样做:

bucket = {u'TagSet': [{u'Key': u'Chargeback_ID', u'Value': u''},
                                {u'Key': u'Chargeback_Owner',
                                 u'Value': u''},
                                {u'Key': u'Description', u'Value': u''},
                                {u'Key': u'Contact_Email',
                                 u'Value': u'xyz@email.com'},
                                {u'Key': u'Project_Name', u'Value': u'ae'}]}
for entry in bucket['TagSet']:
    if entry['Key'] == "Contact_Email":
        print("{} : {}".format(entry['Key'], entry['Value']))

结果:

Contact_Email : xyz@email.com