让我介绍一个场景 . 我必须编写一个模块来验证Python字典 . 字典中的每个键都存储两个东西:值和类型 . 像这样的东西:

d = {
    'key1': {
        'type' : 'string',
        'value' : 'The quick brown fox'
    },
    'key2': {
        'type' : 'integer',
        'value' : 23
    }
}

现在必须根据类型验证值 . 换句话说,相同类型的值将具有相同的验证 . 还有大量的验证对所有类型的值都是通用的 .

我想到的第一件事就是为每种类型的数据编写一个验证类,这些类中的每一个都将继承一个包含公共验证的基类 . 我有大约17种类型的数据,这意味着如果所有数据类型都存在于字典中,我需要创建17个不同的Python对象来验证一个字典 .

所以现在我的问题是:在这种情况下创建相关对象的时间成本是多少?或者我应该尝试使用一种巨大的方法来完成整个事情?