从另一个函数,我有这样的元组('falseName', 'realName', positionOfMistake)
,例如('Milter', 'Miller', 4)
。
我需要编写一个函数来制作这样的词典:
D={realName:{falseName:[positionOfMistake], falseName:[positionOfMistake]...},
realName:{falseName:[positionOfMistake]...}...}
函数必须接受一个字典和一个像上面这样的元组作为参数。
我是这样想的:
def addToNameDictionary(d, tup):
dictionary={}
tup=previousFunction(string)
for element in tup:
if not dictionary.has_key(element[1]):
dictionary.append(element[1])
elif:
if ...
但它不起作用,我有点累了。
如果只添加一个新元组,并且您确定内部字典中没有冲突,则可以执行以下操作:
在构建dict时,使用
collections.defaultdict
可以节省大量的时间,而且事先不知道您将拥有哪些密钥。这里它被使用了两次:用于生成的dict,以及dict中的每个值
将此与代码结合起来:
或测试:
dictionary的setdefault是更新现有dict条目(如果存在)或创建新条目(如果不是一次完成的话)的好方法:
循环样式:
字典现在等于:
相关问题 更多 >
编程相关推荐