![](/img/trans.png)
[英]Trying to add to dictionary values by counting occurrences in a list of lists (Python)
[英]Add list values to dictionary of lists
我有一個列表的字典:
my_dict = {'Name': ['John', 'Peter', 'Greg'], 'Age': [26, 39, 48]}
我想將平面列表中的新值添加到字典的每個鍵:
new_row = ['Bob', 23]
所以最終的字典看起來像這樣:
{'Name': ['John', 'Peter', 'Greg', 'Bob'], 'Age': [26, 39, 48, 23]}
最有效和最聰明的方法是什么,最好不依賴導入的模塊?
這會起作用,但有更好的方法嗎?
i = 0
for k in my_dict.keys():
my_dict[k].append(new_row[i])
i += 1
您可以將append
用於鍵Name
和Age
中的值,因為它們都是列表,並且列表是可變的
my_dict['Name'].append(new_row[0])
my_dict['Age'].append(new_row[1])
my_dict
Out[27]: {'Name': ['John', 'Peter', 'Greg', 'Bob'], 'Age': [26, 39, 48, 23]}
您可以zip
將字典的值與列表。
for l, x in zip(my_dict.values(), new_row):
l.append(x)
您還可以使用字典理解來創建新的字典而不修改原始字典。
new_dict = {k: v + [x] for (k,v), x in zip(my_dict.items(), new_row)}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.