【发布时间】:2016-10-04 18:43:52
【问题描述】:
我正在尝试使用 Glassdoor 的 API 中的值附加一个列表。
当我从这个 API 收到回复时,我会得到诸如公司名称、评级、CEO 等信息,还有更多信息,最后,如果公司归母公司所有,我也会得到这些信息。
我的问题是,当我在列表中附加所有这些信息时,如果我从 API 获得响应的公司没有母公司,我不希望它跳过提取其他相关数据,例如姓名、CEO 等。我希望它打印出该公司响应的可用数据,然后打印出母公司所在的位置 NA。
我从 API 获得响应的每家公司的可用数据可能有不同的长度/变化。
例如:
comp_info.append(data['response']['employers'][0]['name'])
这就是我想要实现的目标,Apple 没有母公司,而 LSI Corporation 有。我不确定如何解决这个问题?
[APPLE,蒂姆库克,4.5,不适用,计算机硬件] [LSI Corporation,Some Guy,4.6,Avago Technologies,计算机硬件]
【问题讨论】:
-
要获得调试代码的帮助,您需要发布实际代码和实际错误以及必要的示例数据。简而言之,您需要使用
if语句来测试条件并选择替代行为。请注意,python 中的list不会引发KeyError(如您的问题摘要中所示),因为列表没有键。 -
@dsh,同意。当他谈论
KeyError时,他可能指的是data字典 -
@brianpck 我同意你的看法。我提到它是因为他似乎没有足够清晰的理解来确定问题的原因和合适的解决方案。
标签: python json for-loop keyerror