"在Python中遇到Key错误"

2024-04-25 08:06:41 发布

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

在我的python程序中,出现了以下错误:

KeyError: 'variablename'

从这个代码:

path = meta_entry['path'].strip('/'),

有人能解释一下为什么会这样吗?


Tags: path代码程序错误metastripentrykeyerror
3条回答

我完全同意关键的错误评论。您还可以使用dictionary's get()方法来避免异常。这也可以用于提供默认路径,而不是None,如下所示。

>>> d = {"a":1, "b":2}
>>> x = d.get("A",None)
>>> print x
None

对于dict,使用

if key in dict

不使用

if key in dict.keys()

会很费时

^{}通常表示密钥不存在。那么,您确定存在path键吗?

从官方的python文档:

异常键错误

Raised when a mapping (dictionary) key is not found in the set of existing keys.

例如:

>>> mydict = {'a':'1','b':'2'}
>>> mydict['a']
'1'
>>> mydict['c']
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
KeyError: 'c'
>>>

所以,试着打印meta_entry的内容并检查path是否存在。

>>> mydict = {'a':'1','b':'2'}
>>> print mydict
{'a': '1', 'b': '2'}

或者,你可以:

>>> 'a' in mydict
True
>>> 'c' in mydict
False

相关问题 更多 >