【发布时间】:2020-07-13 07:02:45
【问题描述】:
我一直在尝试将列表理解的输出转换为变量。很傻,但无论我尝试什么,我似乎最终都会得到一个空列表(或 NoneType 变量)。
我猜它与它使用的生成器有关,但我不确定如何绕过它,因为我需要生成器从我的 JSON 文件中检索所需的结果。 (而且我是一个列表理解和生成器新手,不知道怎么做)。
这是工作代码(最初发布为这些问题的答案(here 和 here))。
我希望将print() 部分的输出写入列表。
def item_generator(json_Response_GT, identifier):
if isinstance(json_Response_GT, dict):
for k, v in json_Response_GT.items():
if k == identifier:
yield v
else:
yield from item_generator(v, identifier)
elif isinstance(json_Response_GT, list):
for item in json_Response_GT:
yield from item_generator(item, identifier)
res = item_generator(json_Response_GT, "identifier")
print([x for x in res])
任何帮助将不胜感激!
【问题讨论】:
标签: python list generator list-comprehension q