pip install colander
python
import colander
class Teacher(colander.MappingSchema):
name = colander.SchemaNode(colander.String())
email = colander.SchemaNode(colander.String(), validator=colander.Email())
contact = colander.SchemaNode(colander.String())
class Student(colander.MappingSchema):
name = colander.SchemaNode(colander.String())
email = colander.SchemaNode(colander.String(), validator=colander.Email())
contact = colander.SchemaNode(colander.String())
python
import colander
def validate_data(data, schema):
try:
schema().deserialize(data)
except colander.Invalid as e:
for node in e:
print(node.msg)
python
data = {
'email': 'zhangsan@example.com',
'contact': '1234567890'
}
validate_data(data, Teacher)