这是我的 JSON 数据
[
{
"id":1,
"name":"abc",
"phone": "12345",
"Charecteristics": [
{
"id":1,
"name":"Good Looking",
"rating": "Average",
}
{
"id":2,
"name":"Smart",
"rating": "Excellent",
}
]
},
{ ... },
{ ... }
]
我有两个 Python 类
class Character(object):
id = 0
name = ""
rating = ""
class Person(object):
id = 0
name = ""
phone = ""
Characteristics = []
我需要解析 JSON 数据并实例化适当的类。这些类是不言自明的:即 Person 有一个字符类数组。
我如何实例化这些并正确存储数据?
另外,我将如何访问特定的个人数据?即人员的详细信息和特征
看一眼colander http://docs.pylonsproject.org/projects/colander/en/latest/;它使得将 JSON 数据结构转换为 Python 对象变得非常容易。
您定义一个架构:
import colander
class Characteristic(colander.MappingSchema):
id = colander.SchemaNode(colander.Int(),
validator=colander.Range(0, 9999))
name = colander.SchemaNode(colander.String())
rating = colander.SchemaNode(colander.String())
class Characteristics(colander.SequenceSchema):
characteristic = Characteristic()
class Person(colander.MappingSchema):
id = colander.SchemaNode(colander.Int(),
validator=colander.Range(0, 9999))
name = colander.SchemaNode(colander.String())
phone = colander.SchemaNode(colander.String())
characteristics = Characteristics()
class Data(colander.SequenceSchema):
person = Person()
然后使用以下命令传入 JSON 数据结构:
deserialized = Data.deserialize(json.loads(json_string))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)