リストと辞書を含むネストされたjsonオブジェクトがあります..内部のすべての「foo」キーを検索したいと思います。再帰ジェネレーターを実行しようとしていますが、関数が parse の 2 回目の呼び出しで失敗する理由はわかりません。「in」出力が 1 回しか表示されません。インタプリタが parse に 2 度目に入らないように見えます。どこが間違っているかを理解するのを手伝ってください。
def parse(d,key):
print('in')
if type(d)==type({}):
if key in d:
yield d[key]
for k in d:
parse(d[k],key)
if type(d)==type([]):
for i in d:
parse(i,key)