Dar*_*rko 1 python arguments class kwargs
我有一个可以用不同的参数组合构建的类,但我有一个必需的参数列表.这是我目前检查的方式:
# check for the required arguments
rqrd_args = ['a', 'b', 'c'] # required arguments
mssing_args = set(rqrd_args)-set(kwargs.keys())
if mssing_args:
error_lines = ['The following required arguments are missing:']
error_lines.extend(['\t%s'%x for x in mssing_args])
sys.exit('\n'.join(error_lines))
# pull from kwargs
self.a = kwargs['a']
self.b = kwargs['b']
self.c = kwargs['c']
Run Code Online (Sandbox Code Playgroud)
我倾向于重复使用这段代码.我的问题是,我可以以某种方式用循环来替换"#pull from kwargs"部分,该循环遍历所需的参数列表,这样代码更通用吗?我有什么理由不想这样做吗?
如果需要,请将它们作为常规参数:
def __init__(a, b, c, **kwargs):
self.a = a
self.b = b
self.c = c
# ... then the rest in kwargs
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1090 次 |
| 最近记录: |