我想翻开以下字典:
dictionary = {
4388464: ['getting']
827862 : ['Taruma', 'Varuna']
...
}
Run Code Online (Sandbox Code Playgroud)
成:
dictionary = {
4: {3: {8: {8: {4: {6: {4: {'words': ['getting']}}}}}}}
8: {2: {7: {8: {6: {2: {'words': ['Taruma', 'Varuna']}}}}}}
...
}
Run Code Online (Sandbox Code Playgroud)
这将允许我使用字典:dictionary[8][2][7][8][6][2]['words']而不是:dictionary[827862].
import pprint
dictionary = {
4388464: ['getting'],
43881: ['got'],
827862 : ['Taruma', 'Varuna'],
}
d2 = {}
def add_it(d, k, words):
knum = int(k[0])
if len(k) == 1:
d[knum] = {'words': words}
else:
dsub = d.setdefault(knum, {})
add_it(dsub, k[1:], words)
for k, words in dictionary.items():
add_it(d2, list(str(k)), words)
pprint.pprint(d2)
Run Code Online (Sandbox Code Playgroud)
打印:
{4: {3: {8: {8: {1: {'words': ['got']},
4: {6: {4: {'words': ['getting']}}}}}}},
8: {2: {7: {8: {6: {2: {'words': ['Taruma', 'Varuna']}}}}}}}
Run Code Online (Sandbox Code Playgroud)