- 此问题在此处已有答案**:
Change what the *splat and **splatty-splat operators do to my object(2个答案)
昨天关门了。
我知道*
和**
在Python中的作用(例如What do the * (star) and ** (double star) operators mean in a function call?)。但是如果我想创建我自己的"类似dict"的类,我想知道**
是否Map到一些dunder方法,我可以将这些方法添加到我的类中,这样我的类就可以以类似的方式响应**
。如果不是dunder,是否有其他方法可以创建一个完全类似于dict的类,它 * 不 * 支持**
前缀运算符?
(对于*
,在元组类上获得相同的加分,但这是我需要解决方案的dict版本!)
1条答案
按热度按时间xzlaal3s1#
在Python中,
*
和**
的意思是:*args
允许我们将可变数量的非关键字参数传递给函数。例如,
输出将是,
**kwargs
允许我们将可变长度的关键字参数传递给函数。如果我们运行上面的程序,输出将是