【发布时间】:2013-07-11 16:53:38
【问题描述】:
我是编程新手,因此感谢所有帮助: 给定一个样本字典
d = {0 : (1, 2, 3), 1 : (2, 3, 4), 2 : (5, 6, 7)}
是否可以使用原始键创建一个新字典,但键的值是值的子值? 即:
0: (1, 2, 3) ---> 0: (4, 5, 6, 7), 1: (5, 6, 7, val(2), val(3))...
所以我希望删除 2,3,因为它们已经包含在原始值 0 中,依此类推。 *另外,我希望替换只进行 n 次
据我了解,这类似于制作subdict?
问题是,我必须在一个大字典上执行此操作,而不是像上面那样使用给定字典,每个键都有给定值,所以我正在使用
-编辑-
G = {
0: (1,2,3)
1: (3,4,5)
2: (4,5,6)
3: (7,8,9)
...
150: (10,11,12)}
-编辑结束-
k = d.keys()
v = d.values()
和
for v in k:
print v " is connected to ", d[v]," by 1 length"
这是一种有点迂回的方式来显示键及其值
-编辑-
所以我想制作一个新字典,新值类似于:
G_new = {
0: ((3,4,5),(4,5,6),(7,8,9))
1: ((7,8,9), (值为 4), (值为 5))
...}
然后只保留唯一值并删除键的旧值中包含的值,这样:
G_new_final = {
0: (4,5,6,7,8,9)
1:(7、8、9 等)
...} #until key 150
而且由于我正在处理大量数字,我猜我需要某种函数或字典理解?
-编辑结束-
谢谢!!
【问题讨论】:
-
我不确定我是否理解这个问题,如果你有键和值,那么你有相当于 d?
-
你能把这个转换的实际预期结果发布到
d吗?
标签: python python-2.7 dictionary key key-value