一个帮助轻松导航嵌套结构的包
项目描述
Needle
轻松导航嵌套结构。
描述
该包的核心理念是提供一个简单接口,允许将嵌套结构“扁平化”为一个普通表格,其中每个键都表示为一个完全限定名称,该名称指向结构中的某个字段。这对于处理从多个文件或容器合并而成的复杂配置对象特别有用,这些对象包含非常长的键,而这些键通过美化打印难以直观显示。
功能
该包的目标是提供一个简单接口,以便在调试执行脚本时在终端中导航配置。它提供了两个基本的高级功能
from needle import search, view
obj = { ... } # some nested object
# parsing keys (with optional depth limitation)
s = search(obj, max_depth=3)
print(s.top.flat_keys) # all keys available on the topmost level
s.subsearch("dataset") # navigating to the "dataset" subsection
print(s.top.flat_keys) # now, the "dataset" subsection is on the top of the stack
view(obj) # starts an interactive mode as showed below
展示
为什么?
该包的作者遇到了经常需要导航深层嵌套对象的麻烦,这足以让他编写一个专门的包,这个包(在他看来)应该简化这一努力。