使访问类似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 Android在用户按下硬键时如何从选项卡式片段中获取数据?   java Android改造循环请求不执行回调   参考解释Java中的链表数据结构   java如何查找@EntityListeners调用期间更改的字段   当我试图通过socket流发送/接收jxrpc时出现java“socket关闭”错误   java Javafx组合框自动完成返回错误   java引用集合上带有@DBRef注释的文档   Bouncy Castle在C中没有从Java解密DoFinal#   PHP中未签名的右移/Zerofill Right Shift/>(Java/JavaScript等效)   为什么apache java http库不能处理ContentEncoding:none的站点?   java如何在其他页面的文本视图中显示logcat?   java可以有效地更改字符串中的EOL字符   java向Spring Boot应用程序添加页面(非常基本)   java Android Studio Gradle项目“无法启动守护进程”   仅在第一行使用XOR JAVA进行加密解密   intellij idea Java层分离模块之间的循环依赖关系