python定义一个函数,当传递参数时,python函数中的参数传递的两种方式

  python定义一个函数,当传递参数时,python函数中的参数传递的两种方式

  Python函数定义和参数传递1。函数定义#类似于def func(args.):doSomething以关键字def开头,后面是函数名和参数。下面是函数处理。

  示例:

  Add (a,b):可以设置return a b参数的默认值,比如:

  DEF (a,b=10): #注意:默认参数只会计算一次。return a b默认参数只会计算一次是什么意思?

  Def func( a,b=[] ): #b的默认值指向一个空列表,每次没有默认值的时候都会指向这个内存。B . Append(a)Return B Print(func(1))#将元素1添加到默认空列表,已经是[1]print(func(2))#将元素2添加到默认列表,默认列表已经是[1,2] print (func (3,[]) #将元素1添加到B指向的空列表,默认列表仍然是[1,2]print(func(4))#将元素4添加到默认列表,已经是[1,2,4] 结果:[

  2.参数传递def func (a,b): print (a=% d,b=% d% (a,b))可以用下面的方法,结果是一样的。

  Func(10,20) #代替参数名,需要按参数顺序传递func(A=10,B=20) #可以用参数名乱序传递func(B=20,A=10) #结果:A=10,B=20a=10,B=20a=10,B=20a=10,B=20a=10

  Def func(*args): #该定义会将传递的参数包装成元组print (args,type (args)) func (10,20) # Result: #(10,20) class tuple 。举一个与上述过程相反的例子:

  DEF func (a,b): print (a=% d,b=% d% (a,b)) a=(10,20) func (* a) #在调用函数中使用` * 时,元组将被解包到单个变量中并按顺序传入函数# Result: A=10,另一个定义:

  Def func(**kw):#使用* *定义参数会将传入的参数包装成字典dictprint (KW,Type (KW)) FUNC (A=10,B=20) #这类函数在使用时必须指定参数值。使用格式key=value # Result: {B: 20, a。

  Def func (a,b): print (a=% d,b=% d% (a,b)) d={a: 10, b: 20} func (* * d) #调用时,使用* *会将字典解包为变量并传递给函数。Def func(*args,**kw):#这种形式的定义意味着可以接受任何类型的参数打印(args,kw)。总结:* *定义函数参数时,传入函数的参数会被转换成一个字典,如果调用* *的话,字典会被解包成单个元素。Lambda表达式lambda表达式是一个简单的函数。

  如f=lambda参数1,参数2:返回的计算值。

  例如:

  Add=lambda x,y: x yprint(add(1,2)) 结果:3

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: