擅长:python、mysql、java
<p>如果您不知道其他任何东西,并且结构可以像您所暗示的那样相当随意,那么您必须访问每个节点并进行检查。这可以通过使用递归的通用方式来实现。下面是一个快速而肮脏的函数来实现它:</p>
<pre><code>In [4]: def extract_text(obj, acc):
...: if isinstance(obj, dict):
...: for k, v in obj.items():
...: if isinstance(v, (dict, list)):
...: extract_text(v, acc)
...: elif k == "text":
...: acc.append(v)
...: elif isinstance(obj, list):
...: for item in obj:
...: extract_text(item, acc)
...:
</code></pre>
<p>以下是如何使用它:</p>
^{pr2}$
<p>注意,您的问题实际上与JSON没有任何关系,JSON是一种基于文本的数据序列化格式。您已经在处理反序列化的数据和python数据结构。在任何情况下,如果你真的想要你的问题的结果,你可以简单地做:</p>
<pre><code>In [11]: {"json1": ",".join(acc1)}
Out[11]: {'json1': 'yesterday,tomorrow,today'}
</code></pre>
<p>或者任何你喜欢加入的分隔符,比如一个简单的空格:</p>
<pre><code>In [12]: {"json1": " ".join(acc1)}
Out[12]: {'json1': 'yesterday tomorrow today'}
</code></pre>