处理大型json数据的方便库

activejson的Python项目详细描述


activejson

PyPI versionCircleCI

A convenient library to deal with large json data

一个处理大型json数据的方便库。这个包的目的是帮助处理类似json的复杂数据,将它们转换成更易于管理的数据结构。

安装

OS X和Linux:

来自PYPI

$ pip3 install activejson

从源头出发

$ git clone https://github.com/dany2691/activejson.git
$ cd activejson
$ python3 setup.py install

用法示例

您可以用下一种方法展开复杂的dict:

complex_json={'cat':{'grass':'feline','mud':'you never know','horse':'my joke'},'dolphin':[{'tiger':[{'bird':'blue jay'},{'fish':'dolphin'}]},{'cat2':'feline'},{'dog2':'canine'}],'dog':'canine'}
fromactivejsonimportflatten_jsonflatten_complex_json=flatten_json(complex_json)print(flatten_complex_json)

结果可能是下一个:

{'cat_grass': 'feline',
 'cat_horse': 'my joke',
 'cat_mud': 'you never know',
 'dog': 'canine',
 'dolphin_0_tiger_0_bird': 'blue jay',
 'dolphin_0_tiger_1_fish': 'dolphin',
 'dolphin_1_cat2': 'feline',
 'dolphin_2_dog2': 'canine'}

另一方面,可以将dict转换为具有动态属性的对象:

fromactivejsonimportFrozenJSONfrozen_complex_json=FrozenJSON(complex_json)print(frozen_complex_json.cat.grass)print(frozen_complex_json.cat.mud)print(frozen_b.dolphin[2].dog2)

结果可能是下一个:

'feline''you never know''canine'

开发设置

此项目使用pipenv进行依赖性解析。这是一种混合 皮普和维图阿列诺夫。按照下面的说明设置开发环境。

$ git clone https://github.com/dany2691/activejson.git
$ cd activejson
$ pipenv shell
$ pipenv install -e .

要运行测试套件,请在pybundler目录中:

$ pytest test/ -vv

丹尼尔·奥马尔·维加拉·佩雷斯–@dan1_netdaniel.omar.vergara@gmail.com

https://github.com/dany2691

贡献

  1. 分叉(https://github.com/dany2691/activejson
  2. 创建功能分支(git checkout -b feature/fooBar
  3. 提交更改(git commit -am 'Add some fooBar'
  4. 推到分支(git push origin feature/fooBar
  5. 创建新的拉取请求

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

推荐PyPI第三方库


热门话题
java检查整数是0还是检查变量是null更好?   java Android Kotlin(初学者)使用File(),并从ACTION\u GET\u内容返回Uri   java JavaFx在“内部场景”和根场景之间切换   spring将XMLBean配置转换为java配置   java JPA HIBERNATE映射列两次(embeddedID和POJO)   c#单态模式模型在什么情况下适用?   java请求。getRemoteUser在特定时间后返回null?   spring boot中PUT api控制器的java my单元测试用例失败   java在字符串中互换地解析和替换值   java Android JNI在应用程序中检测到错误:调用JNI GetMethodID时出现挂起异常   JavaSpringDataMongo:使用非简单键持久化映射   爪哇玻璃鱼连接被拒绝   java如何在用户注册时发送特定电子邮件id的自动回复?   Java列表:实例化时和之后的赋值之间的差异