本文介绍了功能参数**?这些是什么意思?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 我很抱歉这样一个基本问题,但是我无法用短语 a搜索给我一个答案而且我的书完全沉默了 这个。我已经看到了一些python函数defs,它们采用了形式(** param1)的参数。看起来像一个指针...但是我的 关于python的书籍(基本上都是这样)并没有提及。什么是 这个? 杰夫I''m sorry for such a basic question, but I haven''t been able to phrasea search that gets me an answer and my books are totally silent onthis. I have seen a number of python function defs that takeparameters of the form (**param1). Looks like a pointer... but mybooks on python (basic as they are) don''t make a mention. What isthis?Jeff推荐答案 这是一种接受不同数量的命名参数的方法。在 函数中,参数变为一个字典,参数名称为 与传递的参数值对应的键。 解释比理解更难。尝试使用python解释器中的 跟随函数: def test(a,b =''b'',* c,** d ): 打印a,b,c,d 一些测试建议: test( 1,2,3,4) 测试(a = 1,b = 2,c = 3,d = 4) test(2,4,6, 8,10,12,ralph = 23,tony = 45) 看看会发生什么。应该大部分都是不言自明的。 问候, - =戴夫 - 改变是不可避免的,进步不是。It''s a way of accepting a varying number of named arguments. In thefunction, the parameter becomes a dictionary with parameter names asthe keys corresponding to the passed parameter values.It''s harder to explain than understand. Try playing with thefollowing function in the python interpreter:def test(a,b=''b'', *c, **d):print a,b,c,dA couple suggestions for tests:test(1,2,3,4)test(a=1,b=2,c=3,d=4)test(2,4,6,8,10,12,ralph=23,tony=45)See what happens. Should be mostly self-explanatory.Regards,-=Dave--Change is inevitable, progress is not. 有太多表格可能让你感到困惑。首先There are too forms that you may be confusing. First key = a,value = 1 key = c,value =这是一个测试 key = b,value = 2 这允许你通过字典中的字典 来访问关键字参数,而不是单独访问。 你可以将它们结合起来制作非常强大的函数/方法 可以处理不同数量的参数和关键字 参数。 def foo(* args,** kwargs): .... 拉里贝茨key=a, value=1key=c, value=this is a testkey=b, value=2This allows you to access keyword arguments via a dictionaryin the function, instead of individually.You can combine these to make very powerful functions/methodsthat can handle different numbers of arguments and keywordarguments.def foo(*args, **kwargs):....Larry Bates 这篇关于功能参数**?这些是什么意思?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云!
08-14 08:47