2010-10-25 81 views
9

如何獲取字典並將其拆分爲兩個列表,一個是鍵,一個是值。例如採取:將python中的字典拆分爲鍵和值

{'name': 'Han Solo', 'firstname': 'Han', 'lastname': 'Solo', 'age': 37, 'score': 100, 'yrclass': 10} 

,並分成:

['name', 'firstname', 'lastname', 'age', 'score', 'yrclass'] 
# and 
['Han Solo', 'Han', 'Solo', 36, 100, 10] 

任何想法的傢伙?

回答

33

並不難,嘗試help(dict)在控制檯的更多信息:)

keys = dictionary.keys() 
values = dictionary.values() 

對於這兩個鍵和值:

items = dictionary.items() 

哪些可以用來分裂他們還有:

keys, values = zip(*dictionary.items()) 

請注意,所有這些的順序在相同的字典實例中是一致的。 Python中的字典順序是任意的,但對於一個實例是不變的。

+1

很酷。我真的應該這樣做:) – 2010-10-25 23:24:07

+0

是否python3保留鍵[idx]對應任何idx的值[idx]? – 2016-07-19 21:32:32

+0

@VY:對於兩個你應該使用'items()'來代替,我會添加一個示例 – Wolph 2016-07-20 07:16:38