2017-08-25 74 views
0

我有一本字典:創建從字典中前n值(和密鑰)的一個新的字典 - Python的

{'my_account': [45010045, 43527907, 45147474, 35108100, 45159973], 
'your_account': [38966628, 28171579, 39573751, 41359842, 42445236], 
'his_account': [44822460, 45010045, 39276850, 39896128, 45265335] 
} 

我想保持每一個關鍵的第2個元素,因此結果會是這樣的:

{'my_account': [45010045, 43527907], 
'your_account': [38966628, 28171579], 
'his_account': [44822460, 45010045] 
} 

有什麼辦法可以達到這個目的嗎?謝謝。

+1

是 - 它應該是一個非常簡單的字典解析一些列表切片...有,你有使用專門的麻煩事? – mgilson

+0

通過這樣的函數很容易實現:take(n,d.iteritems()) –

+1

@FaidSaad Python 2和Python 3都沒有內置函數'take'。完成這個任務的最簡單的方法是在字典理解中對k,v在d.items()中分割'{k:v [:2]}' –

回答

0

字典解析

my_dict = {'my_account': [45010045, 43527907, 45147474, 35108100, 45159973], 
'your_account': [38966628, 28171579, 39573751, 41359842, 42445236], 
'his_account': [44822460, 45010045, 39276850, 39896128, 45265335] 
} 

new_dict = {k:v[:2] for k,v in my_dict.items()} 
# {'my_account': [45010045, 43527907], 'your_account': [38966628, 28171579], 'his_account': [44822460, 45010045]} 
0

只需刪除這些值即可。使用

for v in D.itervalues(): 
    del v[2:] 
相關問題