【发布时间】:2015-12-03 10:07:54
【问题描述】:
我正在尝试将一个字符串传递给一个函数,该字符串将被解释以确定更新字典所需的所需字典调用。
这是我迄今为止的硬编码示例:
import json
from collections import defaultdict
def default_dict():
return defaultdict(default_dict)
def build_dict():
d["a"]["b"]["c"]["d"]["e"]["f"].update({})
d["a"]["b"]["c1"]["d1"].update({})
return json.dumps(d)
d = default_dict()
print build_dict()
但为了对我有用,我想将字符串传递给 build_dict() 函数。让我们称之为's':
for s in ["a/b/c/d/e/f", "a/b/c1/d1"]:
print build_dict(s)
应该打印以下内容(正如我在硬编码的示例中所做的那样:
{
"a": {
"b": {
"c": {
"d": {
"e": {
"f": {}
}
}
},
"c1": {
"d1": {}
}
}
}
}
我必须确保在我的硬编码示例中支持多个分支(据我测试)。
我目前正在尝试的事情:
- 在构建这个问题的中途,我发现了关于 dpath,“用于通过 /slashed/paths ala xpath 访问和搜索字典的 python 库”。它看起来正是我需要的,所以如果我成功解决了这个问题,我会发布这个问题的答案。
【问题讨论】:
标签: python dictionary