我们有一个 API,它消耗大约 50 到 100 个查询参数。目前,处理程序获取所有参数并将它们设置为 Meta 对象中的属性。像这样的事情
meta = Meta()
meta.param1 = param.get('param1', 'somedefault')
meta.param2 = param.get('param2', 'someotherdefault')
等等。我的问题是,有没有更好的方法来处理这个问题,而不仅仅是处理程序中的一长串分配列表?我目前的想法是将其分解为辅助函数。
meta = self.get_meta(param)
还有其他想法吗?
(更新了我的示例)
最佳答案
PARAMETERS = [
'param1',
'param2',
# ...
]
meta = Meta()
for name in PARAMETERS:
setattr(meta, name, param[name])
根据您的评论...
DEFAULTS = {
'param1': 1,
'param2': 'something',
}
meta = Meta()
for name, value in DEFAULTS.items():
setattr(meta, name, param.get(name, value))
关于python - 在Python中处理大量查询参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13327807/