1

このGist のdefaultdict 1 行ツリーを使用しています。

def tree(): return defaultdict(tree)

[]現在、追加するノードごとに個別に提供する必要があります。

すなわち:

users = tree()
users['harold']['username']['hrldcpr']
users['handler']['username']['matthandlersux']

私の質問は、同じ結果を達成するためのリストを提供できるように、どのように入力を平坦化できるでしょうか?

すなわち:

users = tree()
users['harold', 'username', 'hrldcpr']
users['handler', 'username', 'matthandlersux']

助けてくれてありがとう!

4

1 に答える 1

2

関数を簡単に定義できます。たとえば、 andを引数として指定insertしてノードを作成します。listtree

def insert(tree, List):
    for node in List:
        tree = tree[node]

users = tree()
insert(users, ['harold', 'username', 'hrldcpr'])

次のような構造を作成します{'harold' : {'username' : {'hrldcp' : {} } } }

于 2014-09-29T11:17:28.657 に答える