使访问类似json的数据更加方便。

objectify-json的Python项目详细描述


对象化json

使访问类似json的数据更加方便。

功能

  • 通过点.data.a.b.c)访问dict值。
  • 始终返回ObjectifyJSON类型,该类型保存类型为dict、list或任何其他基元类型的数据。
  • 使用x._data获取真实数据。
  • 如果不存在,则总是返回^ {< CD5> }。
  • 一个名为object的cli工具,用于处理json数据。

安装

pip3 install objectify-json

示例

test.py

批量处理数据的函数

  • 返回值也总是ObjectifyJOSN
  • lambda函数的返回值将始终展开为基元类型。
  • 大多数fn_*函数接受可选的unwrap参数,以允许将基础值作为基元类型传递给lambda。默认值为false。
  • 在cli工具中使用时,如果按属性名(例如map)获取属性失败,则将重试获取添加前缀fn_的函数。这将简化cli命令的编写。

普通

以下方法ObjectifyJOSN接受可选的unwrap以将ObjectifyJOSN数据展开到底层内置数据,默认值为False

  • fn_map(fn, unwrap=False):迭代器上的map
  • fn_reduce(fn, initializer=None, unwrap=False)reduce在迭代器上,lambda作为第一个位置参数,可选的initializer参数将传递给内置的reduce
  • fn_lambda(fn, unwrap=False):值输入和输出
  • fn_filter(fn, unwrap=False):迭代器上的filter

dict

  • fn_keys():将键作为列表返回。
  • fn_values():以列表形式返回值。
  • fn_items():以列表形式返回项。元素具有类型tuple,例如("key", "value")
  • fn_include_keys(keys):过滤dict。保留您给出的keys
  • fn_exclude_keys(keys):筛选dict。删除您提供的keys
  • fn_filter_by_value(fn):按给定的lambda筛选dict.filter,该lambda接受dict item的值。
  • fn_filter_by_kv(fn):按给定的lambda筛选dict.filter,lambda接受keyvalue两个变量。
  • fn_update(key, fn, unwrap=False):更新dict值。您提供的lambda接受原始值并返回一个新值。
  • fn_items_update(fn, unwrap=False):更新dict值。给的lambda接受keyvalue两个变量并返回一个新值。
  • fn_rename(mapping):更新dict key。mapping是一个包含两个元素的列表。

列表

  • fn_sort(fn):对列表进行适当排序。您提供的lambda将作为key参数传递给list的sort方法。
  • fn_dedup(fn=None, all=True):删除列表中的元素的重复数据。如果all如果False,则通过比较上一个值之间的当前值来检查重复,否则将与以前出现的所有值进行比较。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java:不解析XML的简单XML。例外   KIE Workbench的java自定义UI   java将元素从bucket移动到LinkedList,但有一个元素被完全删除   如何将java stream collect转换为scala   java运行AsynkTask多次不工作   java组织。xml。萨克斯。SAXParseException:cvccomplextype。2.4.c:匹配的通配符是严格的   java是一种计算排序算法所需时间的合适方法   java在O(logn)时间内对排序整数数组中具有相同数字的数字进行计数   xpages从当前数据库javaAgent调用另一个数据库的javaAgent   java如何在instagram中上传特定位置的所有照片   JavaApachePOI可以有效地删除多个列   java创建的对象数   java我可以在关闭连接时关闭Oracle JDBC自动提交吗?