Validate dicts in Python

2019-04-18 06:22发布


i looking for tool, or examples to/how to validate dictionaries in python.
For example, i have dict:

test = {'foo' : 'bar', 'nested' : {'foo1' : 'bar1', 'foo2' : 'bar2'} }

And now i must validate it. Lets say, value for key foo must be boolean False or non-empty string. Next, if key foo1 have value bar1, that key foo2 must be int in range 1..10. I wrote simple function to do this, but this is not what i exactly want. Yea, sure, i can test every single item in dict with if..else, but if dict have >50 elements, then it is a bit not comfortable.

Is there any good tool/lib to do this in Python? I not looking for parsers, only fast and effective way to do this right.

4条回答
再贱就再见
2楼-- · 2019-04-18 06:30

Voluptous is a nice tool that does this http://pypi.python.org/pypi/voluptuous

查看更多
Luminary・发光体
3楼-- · 2019-04-18 06:31

I highly recommend Cerberus for its readability or jsonschema because it uses the JSON Schema standard

查看更多
姐就是有狂的资本
4楼-- · 2019-04-18 06:32

You can also try the link below:
https://github.com/sunlightlabs/validictory
Its a great package that helps in validation in an easier way

查看更多
萌系小妹纸
5楼-- · 2019-04-18 06:40

Webster is a pypi package that does dictionary validation and value regex validation.. this allows you to insure that the dictionary has all the keys its supposed to and the values are more or less what you would expect.

https://pypi.python.org/pypi/Webster

查看更多
登录 后发表回答