Python自生

python-autoviv的Python项目详细描述


python autovivPyPiPyPiStats

Python的自生库

安装

将此行添加到应用程序的要求.txt公司名称:

python-autoviv

然后执行:

^{pr2}$

或自行安装为:

$ pip install python-autoviv

使用

导入autoviv并对任何list、dict或基元调用parse。还可以调用序列化JSON上的加载

>>>importautoviv>>>importrequests>>>r=requests.get('http://jsonplaceholder.typicode.com/users')>>>users=autoviv.parse(r.json())>>># or...users=autoviv.loads(r.text)>>>foruserinusers:...print(user.name)...LeanneGrahamErvinHowellClementineBauchPatriciaLebsackChelseyDietrichMrs.DennisSchulistKurtisWeissnatNicholasRunolfsdottirVGlennaReichertClementinaDuBuque>>>user=users[0]>>>print(autoviv.pprint(user,indent=4)){"username":"Bret","website":"hildegard.org","name":"Leanne Graham","company":{"bs":"harness real-time e-markets","name":"Romaguera-Crona","catchPhrase":"Multi-layered client-server neural-net"},"id":1,"phone":"1-770-736-8031 x56442","address":{"suite":"Apt. 556","street":"Kulas Light","geo":{"lat":"-37.3159","lng":"81.1496"},"zipcode":"92998-3874","city":"Gwenborough"},"email":"Sincere@april.biz"}>>>user.name='auto-vivification'>>>r=requests.put('http://jsonplaceholder.typicode.com/users/{0}'.format(user.id),json=user)>>>response=autoviv.parse(r.json())>>>print(response.name)auto-vivification>>>new=autoviv.parse({})>>>new.id=5>>>ifnotnew.username:...new.username='New User'...>>>new.address.geo.lat="-42.3433">>>new.address.geo.lng="74.3433">>>new.email='someone@somewhere.biz'>>>print(autoviv.pprint(new)){"username":"New User","email":"someone@somewhere.biz","id":5,"address":{"geo":{"lat":"-42.3433","lng":"74.3433"}}}

非prop

应该注意的是,缺少引用的属性,包括嵌套的属性,都是错误的。在

>>>importautoviv>>>data=autoviv.parse({})>>>data.property.is_none>>>bool(data.property.is_none)False>>>isinstance(data.property.is_none,autoviv.NoneProp)True>>>'some data'indata.property.is_noneFalse>>>[xforxindata.property.is_none][]>>>data.property.is_none=None>>>isinstance(data.property.is_none,autoviv.NoneProp)False>>>print(autoviv.pprint(data)){"property":{"is_none":null}}

测试

使用pipenv安装测试依赖项。在

$ pip install pipenv
$ pipenv install -d
$ ./test.sh

贡献

欢迎在GitLab的https://gitlab.com/tysonholub/python-autoviv.git上提交错误报告和请求。这个项目是 旨在成为一个安全、受欢迎的协作空间,并且贡献者应遵守 Contributor Covenant行为准则。在

许可证

根据MIT License的条款,这个包是开源的。在

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

推荐PyPI第三方库


热门话题
在Java中使用BufferedReader类读取文本文件的子字符串   java如何在JSP页面上包含来自另一台服务器的动态JSP   使用单表策略的java持久化Hibernate继承映射   java报告状态失败达600秒。谋杀!报告hadoop的进展   java将字符串解析为形状   使用JTable的java ClassCastException?   java在Spring引导中关闭数据库   java Android Studio调试错误(Ubuntu)   java如何区分apache beam中KV实例中的两个键?   java将RealmObjectChangeListener添加到异步下载的RealmObject   java匹配模式之前的所有内容,包括新行和/或回车   java使用JAXB在XML中动态更改元素序列   java如何在MACOS中找到动态库(.dylib文件)的版本   Android中的java Nanohttpd服务器   java libGDX:3d动画不工作