**kwargs是什么意思
在Python中,**kwargs
是一种特殊的参数形式,用于接收可变数量的关键字参数(Keyword Arguments)。kwargs
是一个字典(dictionary),其中关键字是参数名,对应的值是传递给函数的实际参数。
在类的__init__
方法中,**kwargs
常用于接收任意数量的额外参数,并将其作为类的属性进行初始化。通过使用**kwargs
,我们可以在创建类的实例时传递任意数量的关键字参数,而无需事先指定参数的名称和个数。
下面是一个示例:
class MyClass:
def __init__(self, **kwargs):
for key, value in kwargs.items():
setattr(self, key, value)
# 创建实例并传递关键字参数
obj = MyClass(name='Alice', age=25, city='New York')
# 访问传递的参数
print(obj.name) # 输出: Alice
print(obj.age) # 输出: 25
print(obj.city) # 输出: New York
在上述示例中,**kwargs
接收了关键字参数name
、age
和city
。然后在__init__
方法中,通过使用setattr
函数,将这些传递的参数作为属性初始化到类的实例中。因此,可以通过实例对象直接访问这些属性。