擅长:python、mysql、java
<p>如果您不确定此列表可能有多少级别,那么您需要的似乎是递归:</p>
<pre><code>def unnest(d, keys=[]):
result = []
for k, v in d.items():
if isinstance(v, dict):
result.extend(unnest(v, keys + [k]))
else:
result.append(tuple(keys + [k, v]))
return result
</code></pre>
<p>只是一个友好的提醒:在python3.6之前,dict顺序是不维护的。你知道吗</p>
<pre><code>[('complaints', '2014', 'sfdwa.csv', 'c2c2jh'),
('revenues', '201906', 'ddd.csv', 'e4c5q'),
('revenues', '201907', 'aaa.csv', 'fdwe34x2')]
</code></pre>