【发布时间】:2022-11-21 10:12:13
【问题描述】:
亲爱的蟒蛇专家,这个问题是给你的! 我不要求解决我的任务,只要求解释为什么会发生) 当他们使用时我知道什么是 args 和 kwargs 但当我发现一件事时真的很震惊。所以,请检查我的示例,这里我们将参数传递给函数
def firstFunc(*args, **kwargs):
print('args' )
print(args)
print('kwargs')
print(kwargs)
firstFunc([1, 2], {'firstFirst': 'firstFirst', 'first' : '123', 'second' : '999'})
我的第二个问题是,为什么我们可以从第二个函数中获取字典, 如果我们像这样设置它 kwargs['second'] = 222, 那是我的代码
def firstFunc(*args, **kwargs):
print('args' )
print(*args)
print('kwargs')
print(**kwargs)
kwargs['second'] = 222
secondFunc([1, 2], **kwargs)
def secondFunc(*args, **kwargs):
print('args' )
print(args)
print('kwargs')
print(kwargs)
firstFunc([1, 2], {'firstFirst': 'firstFirst', 'first' : '123', 'second' : '999'})
希望我描述的是可以理解的,我在等你的回答,请告诉我为什么会这样,为什么我不能把字典作为 kwargs 传递! 非常感谢你
#python #pythonic #kwargs #args #functions
我希望只有我的 kwargs 字典
【问题讨论】:
-
要在不扩展字典的情况下使用
kwargs,请执行firstFunc(firstFirst='firstFirst', first='123', second='999')
标签: python function keyword-argument