擅长:python、mysql、java
<p>这是另一个可行的解决方案。在</p>
<pre><code>rows = [('Primary1', 'Primary', None), ('Primary2', 'Primary', None),
('Secpndary1', 'Secondary', 'Primary1'),('Primary3', 'Primary', None), ('Secondary2', 'Secondary', 'Primary1')]
from collections import defaultdict
dd = defaultdict(list)
for row in rows:
node , _ , child = row
x = dd[child].append(node) if child else dd[node]
print dd
>>> dd
defaultdict(<type 'list'>, {'Primary2': [], 'Primary3': [], 'Primary1': ['Secpndary1', 'Secondary2']})
</code></pre>