我有一个带整数键的字典,每个键的值是一个带整数键和整数值的映射。
例如:
x = {
3 : {0:set([1,2,5]), 1:set([3]), 2:set([7,8])},
4 : {0:set([1,2]), 1:set([4]), 2:set([7])},
}
我正在尝试编写一个执行以下操作的函数:
给定x
(例如2)的每个值中存在的键(k),它应返回具有类似结构和以下属性的新dict:
k
k'
)的值是旧字典中与k'
相关联的所有集合的T in x[k]
< / LI>
在上面的例子中,如果参数是k=2
,那么它应该返回:
y = {
7 : {0:set([1,2,5]), 1:set([3,4]), 2:set([7])},
8 : {0:set([1,2,5]), 1:set([3]), 2:set([8])},
}
我目前正在通过迭代旧dict中k
下的所有可能值并构建新值来实现此目的。有没有一种有效的方法呢?
答案 0 :(得分:4)
您还必须创建对象的副本,因为您可以使用deepcopy
copy
模块。查看http://docs.python.org/library/copy.html#copy.deepcopy了解详细信息。这将复制所有对象和基本数据。