2017-06-15 167 views
0

我创建一个Python3字典继承丢失的钥匙:在字典(蟒蛇)

parents = { 
    'parent_0': { 
     'f_name': 'john', 
     'l_name': 'doe', 
     'location': 'New York, NY', 
     'birth_month': 'september', 
     'nationality': 'france', 
     }, 
    'parent_1': { 
     'f_name': 'jane', 
     'l_name': '', 
     'location': '', 
     'birth_month': 'may', 
     'nationality': '' 
    }, 

} 

如何parent_1继承从PARENT_0 l_name,所在地和国籍的核心价值观?

+0

这是一个特例吗?或者是更大问题的一部分? –

+3

有很多方法可以做到这一点。分享更多关于你正在解决的问题可能会导致更好的答案。 –

+0

考虑https://docs.python.org/3/library/collections.html#collections.ChainMap –

回答

2
for key, value in parents['parent_1'].items(): 
    if not value: 
     parents['parent_1'][key] = parents['parent_0'][key] 
1
for key in parents['parent_1'].keys: 
    if parents['parent_1'] == '': 
     parents['parent_1'][key] = parents['parent_0'][key] 
+0

这将使parent_1继承parent_0的值,即使它具有自己的值。 –

+0

我们肯定从这个问题是不可取的?我不清楚期望的输出是什么。 –

+1

“_父母_1如何从parent_0继承l_name的位置和国籍的关键值?”其中OP提及那些''''键只... –

0

下面是使用.update()一个衬垫:

parents['parent_1'].update({ k : v for k, v in parents['parent_0'].items() if not parents['parent_1'][k] }) 

只会更新其​​没有入口那些条目。