2017-07-11 13 views
-4

我試圖獲取從字典中的值,但值是一個列表 例如:在Python中如何使用字典中的列表?

dict_1 = {A:[2,3,4], B:[3,4,5], C:[6,7,8]} 

現在我試圖通過字典來遍歷並獲取它的價值被任何整數除法,並返回值形成另一個字典

dict_2 = {A:[2/x, 3/x, 4/x], B:[3/x, 4/x, 5/x], C:[6/x, 7/x, 8/x]} 
+3

理解這個問題已經變得比回答更困難。 –

+0

@ Ev.Kounis問題是如何在字典中使用列表。我把它看作是如何使用列表作爲字典鍵的值。文章的其餘部分顯示了許多不相關的信息,但OP也已知道如何做到這一點。 – Anthon

+0

@Anthon無論如何,我相信這一個已經*解碼\解密*和回答 –

回答

2

如果你想創建一個新的字典,你可以使用字典理解:

dict_2 = {k: [y/float(x) for y in v] for k, v in dict_1.items()} 

否則,你可以使用一個循環:

for k, v in dict_1.items(): 
    dict_1[k] = [y/float(x) for y in v] 
2

你可以使用字典解析:

>>> from __future__ import division # only required for python 2 (but doesn't hurt on Python 3) 
>>> dict_1 ={'A':[2,3,4],'B':[3,4,5],'C':[6,7,8]} 
>>> x = 2 
>>> {key: [val/x for val in value] for key, value in dict_1.items()} 
{'A': [1.0, 1.5, 2.0], 'B': [1.5, 2.0, 2.5], 'C': [3.0, 3.5, 4.0]} 
相關問題