如何最好地用严格的模式交换JSON数据?

2024-04-24 03:55:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前有一个关于最佳实践的问题,我基本上是在试图找出将实例化设置交换到任意函数的最佳方法。你知道吗

目前,我使用了一个setup函数来构建多个摄影机对象(函数的具体细节不太重要)。你知道吗

def setup(self, cameras: dict):
    ...

这本词典的形式是。。。你知道吗

{
     "hwid_1": {
       "type": integer,
       "fov": integer,
       ...
     },
     "hwid_2": {
       "type": integer
       ...
     },
     "hwid_3": {
       ...
     }
 }

其中每个hwid对应于一个单独的物理相机,setup负责为每个相应的id实例化一个新的Camera


目前,setup()还负责使用JSON模式验证输入字典的模式,并完全按照预期工作。你知道吗

我使用这种方法的问题是,引入的抽象层使得其他开发人员在不首先咨询相关模式的情况下很难知道cameras参数的格式。你知道吗

有没有其他方法可以帮助我使输入字典的模式更加明确,或者这是尝试实例化具有不同属性的对象数组的固有限制?你知道吗


Tags: 对象实例方法函数self字典deftype