python - 当Python中的字典中找不到键值时,如何为字典中的键设置默认值

标签 python dictionary

我正在尝试使用 python 从 eBay 抓取一些结果,但遇到了错误:

condition = item['condition'][0]['conditionDisplayName'][0]
>>> KeyError: 'condition'`

这是有问题的代码:

for item in (parseddoc["findItemsByKeywordsResponse"][0] ["searchResult"][0]["item"]):
    condition = item['condition'][0]['conditionDisplayName'][0]
    print(condition)

我正在尝试找出一种方法来阻止它出现错误,并默认为预设值(例如“N/A”)并继续循环。实现这一目标的最佳方法是什么?谢谢

最佳答案

使用 try/ except 子句捕获 KeyError:

for item in parseddoc["findItemsByKeywordsResponse"][0]["searchResult"][0]["item"]:

    try:
        condition = item['condition'][0]['conditionDisplayName'][0]
    except KeyError:
        condition = 'N/A'

    print(condition)

关于python - 当Python中的字典中找不到键值时,如何为字典中的键设置默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52777307/

相关文章:

python - 从 Elasticsearch 导出的CSV文件中的可读列名称?

python - 使用 numpy 过滤值

python - 与实时 matplotlib 图交互

python - "if"命令仅运行一次且不重复

python - 我字典中有多个键想要指向相同的值我该怎么办

algorithm - 如何找到所有点之间的最短连接?

Python 字典数组

python - 根据有序列表中的键对字典值进行排序

python - 曲线拟合分段函数?

python 3。在值字典中查找数组的值