簡體   English   中英

如何向python字典列表添加值

[英]how to add value to a python dictionary list

如何僅將值 2 添加到“AF3”列表中?

x = dict.fromkeys(['AF3', 'AF4', 'AF7', 'AF8', 'AFz', 'C1', 'C2', 'C3', 'C4', 'C5', 'C6', 'CP1', 'CP2', 'CP3', 'CP4',
                   'CP5', 'CP6', 'Cz', 'F1', 'F2', 'F3', 'F4', 'F5', 'F6', 'F7', 'F8', 'FC1', 'FC2', 'FC3', 'FC4', 'FC5',
                   'FC6', 'FCz', 'FT10', 'FT7', 'FT8', 'FT9', 'Fp1', 'Fp2', 'Fz', 'O1', 'O2', 'Oz', 'P1', 'P2', 'P3', 'P4',
                   'P5', 'P6', 'P7', 'P8', 'PO3', 'PO4', 'PO7', 'PO8', 'POz', 'T7', 'T8', 'TP10', 'TP7', 'TP8', 'TP9','PD'], [])

x['AF3'].append(2)

字典

創建字典時,您將每個鍵分配給同一個列表。 然后,如果您附加到任何鍵,由於每個鍵都指向同一個列表,它會將元素附加到每個鍵。

您想要的是每個鍵的不同列表。 例如,您可以從 dict-comprehension 創建您的 dict:

keys = ["AF3", "OTHERKEYS..."]
x = {key: [] for key in keys}
x["AF3"].append(2)  # this will only append to AF3 only.

如前所述,在創建字典期間所有值都指向同一個列表。 我可能會使用 fgoudra 的答案,但如果您無法控制x的制作方式,您可以像這樣覆蓋它:

x['AF3'] = []  
x['AF3'].append(2)
print (x['AF3'])  

暫無
暫無

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

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