【问题标题】:Marshmallow: How to handle undeclared fields?Marshmallow:如何处理未声明的字段?
【发布时间】:2016-04-13 14:23:13
【问题描述】:

我正在尝试验证包含字符串化整数作为键的字典。这些整数是任意数字 ID,不受我的控制。

如何在模式中声明它?

也许有一种方法可以声明一个我可以用作包罗万象的默认架构?

谢谢。

http://marshmallow.readthedocs.org/en/latest/index.html

【问题讨论】:

  • 您可以使用 dict.keys() 获取 dict 的所有键,然后使用 for k in d.keys(): validate k and d[k] 之类的方法遍历所有键

标签: python validation schema deserialization marshmallow


【解决方案1】:

我更喜欢的方式,使用地图而不是if statement

for key, value in dictionary.items():
    dictionary[
        {
         "True": str(key), 
          "False": <build a random key> 
        }.get(str(isinstance(key, int)))
     ] = value

注意:仅适用于 Python3+

【讨论】:

    猜你喜欢
    • 2020-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多