【发布时间】:2017-02-21 19:30:06
【问题描述】:
将值添加到 dict 并使用简单的 if 语句对值 + 1 如果键存在则可以正常工作:
d = {word: (frequency, wordList[1]) for frequency, word in sorteddict}
for key, value in d.items():
my_dict[key, value] = my_dict[key, value] + 1 if key in my_dict else value
我想遍历字典“d”,将所有键值对添加到字典“my_dict”。
我遇到的问题是字典是键:列表对,如果键存在,我只想增加 list[0] 的值。例如:
d = {'smith': (1, 'jones')}
my_dict = {'smith': (2, 'jones')}
my_dict 已经包含密钥“smith”,因此逻辑如下:
+ 1 to list[0] else 1
【问题讨论】:
-
元组中的第二个值是多少?
-
这些不是列表,这些是元组!你不能增加元组!
-
这个问题有点难以理解。你的意思是这样的吗?
{x:(y[0]+1,y[1]) for x,y in d.items()} -
@Nullman:注意这里有两个字典:
d和my_dict... -
是的,感谢您指出元组/列表错误!我现在已经更正了。
标签: python dictionary