使用di的键错误

2024-05-16 12:54:35 发布

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

我有以下几点

a = {'afaf178a0a3e4f91812d36a3c3289dbd': {'profile_id': 'afaf178a0a3e4f91812d36a3c3289dbd', 'cute_name': 'Watermelon'}, 'cd1800ef65ea4ac7a65effed5ed420d0': {'profile_id': 'cd1800ef65ea4ac7a65effed5ed420d0', 'cute_name': 'Peach'}, 'b673d818a57f4cdeb549c0cbe152ed51': {'profile_id': 'b673d818a57f4cdeb549c0cbe152ed51', 'cute_name': 'Papaya'}}

当尝试使用a[0]访问它时,我得到一个keyrerror。为什么会这样


Tags: nameidcuteprofilepeachpapayawatermelonkeyrerror
2条回答

您的字典有以下键:

>>> a.keys()
['b673d818a57f4cdeb549c0cbe152ed51', 'afaf178a0a3e4f91812d36a3c3289dbd', 'cd1800ef65ea4ac7a65effed5ed420d0']

您应该使用其中一个来访问这些值。否则,您可以使用以下命令迭代键:

for k in a.keys() :
    pass # put something here

或者,您可以迭代这些值:

for v in a.values() :
    pass # put something here

或者,您可以迭代这两个步骤:

for k,v in a.items() :
    pass # put something here

每当请求dict()对象且键不在字典中时,Python就会引发KeyError

以您文章中的词典为例:

>>> a.keys()
dict_keys(['afaf178a0a3e4f91812d36a3c3289dbd', 'cd1800ef65ea4ac7a65effed5ed420d0', 'b673d818a57f4cdeb549c0cbe152ed51'])

0不在您提供的词典中,因此KeyError

相关问题 更多 >