每当我在 python 中删除字典的一部分时,我都会收到此错误。早期我有
del the_dict[1]
然后当我浏览字典时,我立即得到错误
test_self = the_dict[element_x]
关键错误:4
有谁知道那个错误是什么。一切都从字典中正确删除,但是当我回去搜索它时,我得到了这个错误。
每当我在 python 中删除字典的一部分时,我都会收到此错误。早期我有
del the_dict[1]
然后当我浏览字典时,我立即得到错误
test_self = the_dict[element_x]
关键错误:4
有谁知道那个错误是什么。一切都从字典中正确删除,但是当我回去搜索它时,我得到了这个错误。
您似乎错误地尝试访问索引上的字典元素。你不能那样做。您需要访问键上的 dict 值。由于字典没有排序。
例如:-
>>> my_dict = {1:2, 3:4}
>>> my_dict
{1: 2, 3: 4}
>>>
>>> del my_dict[0] # try to delete `key: 1`
Traceback (most recent call last):
File "<pyshell#18>", line 1, in <module>
del my_dict[0]
KeyError: 0
>>> del my_dict[1] # Access by key value.
>>> my_dict # dict after deleting key
{3: 4}
>>> my_dict[1] # Trying to access deleted key.
Traceback (most recent call last):
File "<pyshell#26>", line 1, in <module>
my_dict[1]
KeyError: 1
一切都从字典中正确删除,但是当我回去搜索它时
您当然无法获得已删除的键值。那会给你KeyError
。你为什么想做这样的事情?我的意思是,你为什么要访问你知道不存在的东西?
或者,您可以使用in
运算符来检查字典中是否存在键:-
>>> my_dict = {1:2 , 3:4}
>>> 4 in my_dict
False
>>> 1 in my_dict
True