簡體   English   中英

如何將列表值分配給字典鍵?

[英]How to assign list values to dictionary keys?

categories =  {'player_name': None, 'player_id': None, 'season': None} 

L = ['Player 1', 'player_1', '2020']

如何遍歷列表並將其值分配給相應的鍵? 所以它會變成這樣:

{'player_name': 'Player 1', 'player_id': 'player_1, 'season': '2020'}

謝謝

如果 python >= 3.6,則使用zip() + dict() ,如果 < 3.6,看起來 dict 是無序的,所以我不知道。

測試.py

categories =  {'player_name': None, 'player_id': None, 'season': None}
L = ['Player 1', 'player_1', '2020']
print(dict(zip(categories, L)))

結果:

$ python3 test.py
{'player_name': 'Player 1', 'player_id': 'player_1', 'season': '2020'}
cat = { 'player_name' : None, 'player_id ': None, 'season' : None }
L = ['Player 1', 'player_1', 2020]

j = 0 
for i in cat.keys():
    cat[i]  =  L[j]
    j += 1

這應該可以解決您的問題

如果列表中的項目與字典的鍵順序相同,即如果 player_name 是列表中的第一個元素,則字典中的 'player_name' 應該排在第一位

categories = {'player_name': None, 'player_id': None, 'season': None}
L = ['Player 1', 'player_1', '2020']

for key, value in zip(categories.keys(), L):
    categories[key] = value

你可以試試這樣的

categories = {'name':None, 'id':None, 'season':None}
L = ['Player 1', 'player_1', '2020']

it = iter(L)
for x in it:
    categories['name'] = x
    categories['id'] = next(it)
    categories['season'] = next(it)
    

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM