#!/usr/bin/env python# coding=utf-8import osimport sysdef set_list(): a = set() a.add((0, 1)) a.add((1, 2)) a.add((0, 4)) a.add((2, 3)) a.add((1, 5)) a.add((3, 6)) a.add((4, 7)) a.add((5, 8)) a.add((7, 71)) a.add((71, 78)) print(a) # -----------------------------方案1 b = dict() for i, v in a: childrenid=0 if i != 0: parentid = get_first_parentid(a, i) childrenid = v if childrenid != 0: if parentid in b: b[parentid].append(childrenid) else: b.fromkeys('%s' % parentid, parentid) b[parentid] = [] b[parentid].append(childrenid) print(b)#{1: [2, 5, 3, 6, 8], 4: [7, 78, 71]}def get_first_parentid(data, parentid): for i, v in data: if v == parentid: if i == 0: return v else: return get_first_parentid(data, i)if __name__ == '__main__': set_list() |