python 函数的参数,python函数的5种参数详解
Yyds干货库存
Python的参数详解1。Python的函数参数类型必须传入:调用函数时必须传入的参数。定义函数时,只定义参数名和关键字参数。传入时,默认参数作为参数名称-值对传入。定义函数时,默认为参数设置一个值,调用时,变长参数被视为默认值:用*或* *修饰的参数;*修改的参数是一个元组),** *修改的参数必须是一个字典,通常情况下,编写*args或**args2和Python所需的参数必须与形参个数相同#编码:UTF-8 #时间:2022/6/27 20: 04 #作者:yangxiaopengdef demo 01 (a,b): print (a,Type(a))print Type(b)# demo 01(1)# typeerrmissing 1所需的位置参数: b 缺少一个未知参数,demo 01必须传递2个参数#必需参数:调用函数时必须传入的参数。定义函数时,只定义参数名。#传入的参数个数必须与形参个数一致。Demo01 (1,2) # yesdemo01 (1,2))# yes demo 01([2,3],(1,2)) # yesdemo01 ( 4}) # yesdemo01(2,{code:1001 , name:zhang , age:18}) # yes
3.关键字参数通过将参数名与参数值相关联来传递。键值对模式,参数名为key。#编码:UTF-8 #时间:2022/6/27 20: 04 #作者:yangxiaopengdef demo 01 (a,b): print (a,type (a),end= _ _) print (b,type (b)) #第一个关键字如在下面的例子中,第一个关键字传递的变量是A,而A位于函数定义的第二个位置,那么第二个位置之前的所有参数都必须由关键字传递。# demo01(1,a=2) # demo01()为参数 ademo01(a=1,b=2) # yesdemo01(1,b=2) # yesdemo01(b=1,a=2) # yesdemo01(b=1,a=[1,2]) # yesdemo01(b=[2,3],a=(1,2)) # yesdemo01(b=1,a={2,3,4 })# yesdemo 01(b=1
4.调用带默认参数的函数时,不传入参数an的默认值,传入时按传入的参数值处理#编码:UTF-8 #时间:2022/6/27 20: 04 #作者:杨小鹏# #默认参数defdemo02 (city=陇南):print (city为默认参数,默认值为:中国,当前值为:,City)#无参数demo02()#参数demo02(北京)
5.不定长变量传入的参数将生成一个元组类型变量供函数内部使用#编码:UTF-8 #时间:2022/6/27 20: 04 #作者:杨晓峰# #不定长参数def demo03(*args): print(args,Type(args))#传入的参数将生成一个元组类型变量供函数demo 03(1)demo 03( code )demo 03(1, code )内部使用
传入的参数不能少于所需参数个数*args后的参数,args后的参数必须通过关键字参数#编码:UTF-8 #时间:2022/6/27 20: 04 #作者:杨小鹏# *args,args后的参数必须通过关键字参数def demo04(a,b,*args C): print(a的传入参数值为:{},b的传入参数值为:{},args的传入参数为:)format(a,b,args,c))#传入的参数不能少于所需参数的数量,a,b,c三个
args之前的参数只能通过位置传递,而不能通过关键字传递。如果传入的参数个数多于所需的参数个数,首先按位置分配所需的参数,然后生成剩余参数的元组并传递给args。
* *修改后的参数必须作为关键字的参数传递,Python解释器会生成一个传入关键字和关键字值的字典供函数内部使用#编码:UTF-8 #时间:2022/6/27 20: 04 #作者:yangxiaopengdef demo 05(* * kwargs):print( kwargs 传入参数为:{}。format (kwargs),type(kwargs))kwargs={code: 1002 , Name : Zhang } # demo 05(kwargs)# type error # * *修改后的参数必须作为关键字参数传递,Python解释器将生成一个传入的关键字和关键字值的字典供函数demo05(**kwargs) # kwargs传入的参数有:{ code : 1002 , Name : Zhang } class dict demo 05(code=内部使用
* *修改的参数必须是最后一个#编码:UTF-8 #时间:2022/6/27 20: 04 #作者:杨晓昂# * *修改的参数必须是最后一个 #语法错误:无效语法defdemo06 (a,b,* args,c * * kwargs,d): pass def demo06 (a,b,* args,c,* * kwargs): print (a的参数值为:{},b的参数值为:{},args的参数为格式(一个,C传入的参数是:{},kwargs传入的参数是:{} 。format (c,kwargs)) demo06 (1,2,3,4,5,c=3,code= 1002 ,name= zhang ,d=3)
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。