Python 3 - **kwargs 值无法修改?
Python 3 - **kwargs values can't be modified?
在Python中练习**kwargs概念,我写了以下函数:
def my_dictionary(**kwargs):
for i in kwargs.values():
i += 2
return kwargs
print(my_dictionary(a=1,b=2))
我得到以下输出:
{'b': 2, 'a': 1}
为什么 kwargs 中的值没有按照指示更改 (i += 2
)?
您只是在修改示例中的变量i
。您需要这样影响 kwargs:
def my_dictionary(**kwargs):
for k in kwargs.keys():
kwargs[k] += 2
return kwargs
在Python中练习**kwargs概念,我写了以下函数:
def my_dictionary(**kwargs):
for i in kwargs.values():
i += 2
return kwargs
print(my_dictionary(a=1,b=2))
我得到以下输出:
{'b': 2, 'a': 1}
为什么 kwargs 中的值没有按照指示更改 (i += 2
)?
您只是在修改示例中的变量i
。您需要这样影响 kwargs:
def my_dictionary(**kwargs):
for k in kwargs.keys():
kwargs[k] += 2
return kwargs