列表中的Python字典(拉个人值)

我有一个包含字典的列表 –

[{'Name of Business' : 'Amazon', 'Contact Name' : 'Jeff Bezos', 'Email' : 'Jeff@Amazon.com'}, { {'Name of Business' : 'Microsoft', 'Contact Name' : 'Bill Gates', 'Email' : 'Bill@Microsoft.com'}] 

我稍后需要将每个业务名称,联系人姓名等保存到一个variables中,或者有一个简单的方法来调用它们以便重用。

我发现使用类似的东西

 for x in dict_list: print x["Client"], x['Contact Name'], x['Email'] 

给我打印所有的数据:
亚马逊Jeff Bezos Jeff@Amazon.com
微软比尔盖茨Bill@Microsoft.com

但是,如果我只想从第一个条目的信息呢?
如果我想将每个字典条目的数据保存到一个单独的variables呢?

运用

  first_entry = dict_list[0] print first_entry["Client"], first_entry['Contact Name'], first_entry['Email'] 

但是必须有一些方法可以在一行中做到这一点,而不是先创build另一个variables?

感谢任何帮助,我可以得到!

只是不要创build该variables:

 print dict_list[0]["Client"], dict_list[0]['Contact Name'], dict_list[0]['Email'] 

或者在一个循环中:

 idx = [1] for i in idx: print dict_list[i]["Client"], dict_list[i]['Contact Name'], dict_list[i]['Email'] 
 print dict_list[0]["Client"], dict_list[0]['Contact Name'], dict_list[0]['Email'] 

你的问题是你用来存储数据的结构。 我会build议使用一个pandas数据框来处理您的数据根据​​您需要的操作:

 import pandas as pd df = pd.DataFrame(l) #Out[5]: # Contact Name Email Name of Business #0 Jeff Bezos Jeff@Amazon.com Amazon #1 Bill Gates Bill@Microsoft.com Microsoft 

每个字典条目对应一个列。 您可以按照一系列的方式访问第一个条目:

 df['Name of Business'] #Out[9]: #0 Amazon #1 Microsoft #Name: Name of Business, dtype: object 

或者作为一个列表:

 df['Name of Business'].tolist() #Out[8]: ['Amazon', 'Microsoft'] 

如果我想将每个字典条目的数据保存到一个单独的variables呢?

你可以使用一个列表理解或map()来实现这个,比如第一个列表元素:

 client, contact, email = map(dict_list[0].get, ("Client", "Contact Name", "Email"))