Python中marshmallow.validateLength()的使用方法
发布时间:2024-01-05 05:53:47
在Python中,marshmallow库提供了validate.Length()函数,用于验证字符串、列表或字典的长度。该函数接受两个参数:min和max,分别表示最小长度和最大长度。以下是validate.Length()的使用方法和例子:
from marshmallow import Schema, fields, validate
class UserSchema(Schema):
username = fields.Str(validate=validate.Length(min=3, max=20))
email = fields.Email(validate=validate.Length(max=100))
password = fields.Str(validate=validate.Length(min=6))
# 示例数据
user_data = {
'username': 'john_doe',
'email': 'johndoe@example.com',
'password': 'password123'
}
# 实例化UserSchema
schema = UserSchema()
# 验证数据
errors = schema.validate(user_data)
if errors:
print(errors)
else:
print('数据验证通过!')
在上面的例子中,我们定义了一个UserSchema类,其中包含了username、email和password字段。我们使用validate.Length()函数来对这些字段进行长度验证。
- username字段的长度必须在3到20之间(包含3和20)。
- email字段的长度不能超过100。
- password字段的长度必须至少为6。
然后,我们使用UserSchema类实例化一个schema对象,并使用schema.validate()方法来验证示例数据user_data。如果数据验证通过,将打印出"数据验证通过!";如果有任何验证错误,将打印出错误信息。
