访问不总是出现在多个字典中的密钥
我想遍历字典并访问唯一键值。访问不总是出现在多个字典中的密钥
for k,v in dict.items():
print v['maidenName']
,但没有运气:例如,我想打印“maidenName”
{'key1': {'firstName': 'bob',
'lastName': 'smith',
'middleName': 'joe'},
'key2': {'firstName': 'jane',
'lastName': 'jackson',
'middleName': 'marie',
'maidenName': 'sanchez'}}
通常的价值,我会通过字典迭代。
该代码会引发错误,因为maidenName
在第一个中不存在。 您可以使用dict.get()
避免这种情况:
for k,v in dict.items():
print v.get('maidenName')
您还可以使用去打印不姓存在一个信息,即摹:
for k,v in dict.items():
print v.get('maidenName', '<no maiden name given>')
不,如果查看数据,'maidenName'不存在于值字典中在所有。 –
@折速我同意,但我认为这是一个错字 – PRMoureu
@PRMoureu我感谢您的帮助。这回答了我的问题。 –
考虑快译通是:
>>> dict = {'key1': {'firstName': 'bob',
... 'lastName': 'smith',
... 'middleName': 'joe'},
... 'key2': {'firstName': 'jane',
... 'lastName': 'jackson',
... 'middleName': 'marie'},
... 'maidenName': 'sanchez'}
它应该工作:
>>> print dict['maidenName']
sanchez
或者如果您不能确定键存在或不
>>> dict.get('maidenName','default_return_data')
'sanchez'
以上将返回default_r eturn_data if maidenName key does 不是存在于字典中。
“'maidenName':'sanchez'”不属于某个键。这是对的吗? –
这些大括号不均衡。这不是一个有效的词典,如果我们不能说出你的数据结构是如何构建的,我们不能告诉你如何访问它的数据。 – user2357112
避免使用'dict'作为变量的名称,它会影响(clobbers)内建的'dict',使其在以下代码中无法使用 – Cireo