更容易遍历和探索json结构
ez-json-traverse的Python项目详细描述
ez-json遍历
更容易遍历和探索json结构。
提供可遍历序列EZJL
、可遍历映射EZJD
和方便的方法,如as_traversable
出发
$ pip install ez-json-traverse
后跟
fromezjtimportas_traversable
口述材料
d={'a':{'name':'Jane','age':{'unit':'year','value':12}},'b':{'name':'John','age':{'unit':'year','value':14}},'c':{'name':'Jill','age':{'unit':'year','value':10}}}t=as_traversable(d,sep='.',map_char='^')# EZJD# Normal key accesst['a']# EZJD of {'name': 'Jane', 'age': {'unit': 'year', 'value': 12}}# Path key accesst['a.name']# 'Jane'# Mapping across valuest['^.age.value']# EZJD of [12, 14, 10]
列出资料
l=[[0,[1,2]],[1,[2,3]],[2,[3,4]]]t=as_traversable(l,sep='.',map_char='^')# EZJL# Normal key accesst[0]# EZJL of [0, [1, 2]]t['0']# EZJL of [0, [1, 2]]# Path key accesst['0.1.0']# 1# Mapping across valuest[':^.1.0']# EZJL of [1, 2, 3]t['1:-1^.1.0']# EZJL of [2]
其他便利设施
t=as_traversable(...,sep='.',map_char='^')# EZJLt.parent# Parent containert.root# Root containert.path# Path from root container to current traversablet.key# Final key or index of current traversable