使用多个字典复制字典键

2024-09-30 16:23:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一本名为“session”的字典,里面有以下内容:

{
    'odbs': {'steps1': {'tension': 3, 'comp': 3}},
    'odbdata': {'steps2': {'tension': 500, 'Session Step': {'Frame': 5000}, 'comp': 30}}
}

如你所见,我有odbsodbdata字典在session。。。和Session Step字典内的steps2

我想将Session Step字典复制到steps1字典中,而不替换其中的现有值。我尝试更新,但它将替换其他值。我想把odbs字典变成

'odbs': {'steps1': {'tension': 3, 'Session Step': {'Frame': 5000}, 'comp': 3}}

Tags: 字典sessionstepframecompsteps1tensionsteps2
3条回答

从你的问题来看这可能有用

data['odbs']['steps1']['Session Step'] = data['odbdata']['steps2']['Session Step']

data = {
    'odbs': {'steps1': {'tension': 3, 'comp': 3}},
    'odbdata': {'steps2': {'tension': 500, 'Session Step': {'Frame': 5000}, 'comp': 30}}
}

to_update = data['odbs']['steps1']

source = data['odbdata']['steps2']['Session Step']
to_update.update(source)

输出:

{'odbdata': {'steps2': {'Session Step': {'Frame': 5000},
   'comp': 30,
   'tension': 500}},
 'odbs': {'steps1': {'Frame': 5000, 'comp': 3, 'tension': 3}}}

我不太清楚我是否理解这个问题,但是这个怎么样:

data = {
    'odbs': {'steps1': {'tension': 3, 'comp': 3}},
    'odbdata': {'steps2': {'tension': 500, 'Session Step': {'Frame': 5000}, 'comp': 30}}
}

data['odbs']['steps1']['Session Step'] = data['odbdata']['steps2']['Session Step']

我建议不要使用所有这些硬编码值。。。这里可能有几个类很有用,或者至少有一些键字符串的常量值

相关问题 更多 >