[英]How to process class **kwargs in Python?
How could I set object attributes using "one" class argument **kwargs
? 如何使用“一个”类参数**kwargs
设置对象属性?
The thing I want is to do this code in one loop: 我想要做的事情是在一个循环中执行此代码:
class purchase():
def __init__(self,**kwargs):
self.set_attributes(kwargs)
def set_attributes(self,kwargs):
if 'file' in kwargs.keys():
self.file = kwargs['file']
if 'text' in kwargs.keys():
self.text = kwargs['text']
if 'language' in kwargs.keys():
self.language = kwargs['language']
It should be something like: 应该是这样的:
class purchase():
def __init__(self,**kwargs):
self.set_attributes(kwargs)
def set_attributes(self,kwargs):
for v,k in kwargs.iteritems():
self.k = v
which of course does not work. 哪个当然行不通。
Is there a way how to programatically set object attributes in one loop? 有没有一种方法可以在一个循环中以编程方式设置对象属性?
Here you go 干得好
class purchase():
def __init__(self,**kwargs):
self.set_attributes(kwargs)
def set_attributes(self,kwargs):
for k, v in kwargs.iteritems():
setattr(self, k, v)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.