python函数的参数
一、参数的定义
1、函数的参数在哪里定义
在python函数中,函数名后面括号里面的就是用来定义参数的。如果有多个参数,就用逗号进行隔开。
案例:
2、带参数的函数调用:
函数定义了参数,那么调用函数的时候就需要传入参数
上面的案列中,我们定义函数的时候在函数名后面的括号里定义的参数叫做形参,
而我们调用函数的时候传入的参数叫做实参,形参是用来接收实参的。
二、参数分类
形参和实参在定义和调用的时候,根据形式不同可以分为几类
1、实参:位置参数、关键字参数
1.1、位置参数(未命名参数)
-
def func(a,b,c):
-
print(a)
-
print(b)
-
print(c)
-
-
func(11,22,33)
-
# 定义函数的形参是按位置来接受传入的实参,我们把这样的传参形式叫做位置参数
1.2、关键字参数(命名参数)
-
def func(a,b,c):
-
print(a)
-
print(b)
-
print(c)
-
-
func(11,c=22,b=33)
-
-
# 调用函数的时候,实参通过参数名指定传给某个形参,这样的传参形式,我们叫做关键字参数
-
# 注意:传参的时候先写位置参数,再写命名参数
2、形参:必备参数、默认参数、不定长参数
2.1、必备参数
在调用函数的时候必须要传的参数
-
def add(a,b):
-
c=a b
-
print(c)
-
-
add(11,22)
上面函数中的a,b就是必备参数,在调用的函数的时候必须要传,不然就会报错
2.2、默认参数
调用函数的时候可传可不传的参数,不传就用默认值
-
def func(a,b,c=88):
-
print(a)
-
print(b)
-
print(c)
-
func(1,2,3)
-
print("{:-^30}".format('区别'))
-
func(1,2)
-
-
'''
-
运行结果:
-
1
-
2
-
3
-
--------------区别--------------
-
1
-
2
-
88
-
'''
通过上述案列中我们可以发现,第一次调用的时候,我们传入了三个参数,c打印出来的是我们传入的值,第二次只传入了两个参数,这个时候c打印出来的是我们定义的时候给它设置的默认值
注意:带有默认值的参数一定要位于参数列表的最后面。
2.3 不定长参数*args
和 **kwargs
调用函数的时候可以传0个或者多个
2.3.1、*args:接受多传入的位置参数、以元组的形式保存
-
def func(*args):
-
print(args)
-
-
func(1,2,3,4)
-
func(*(1,2,3,4))
-
func(*[1,2,3,4])
*args
,args接收的是一个元祖;
调用的时候可以直接传入:func(11,22,33,44,55,66,77)
,
也可以可以先组装list或tuple,再通过*
拆包传入:func(*(11,22,33,44,55,66,77))
;
2.3.2、**kwargs
:接收多传入的关键字参数,以字典的形式保存
-
def func(**kwargs):
-
print(kwargs)
-
-
func(a=1,b=2,c=3)
-
func(**{"a":1,"b":2,"c":3})
-
def func(a,*args,**kwargs):
-
print(f"{a}")
-
print(f"{args}")
-
print(f"{kwargs}")
-
func(1,2,3,4,f=6)
**kwargs
,kw接收的是一个字典;
关键字参数既可以直接传入:func(e=33,h=44,f=55,d=66,c=77)
,
也可以先组装dict,再通过**kw
传入:func(**{'e':33,'h':44,'d':66,'c':77})
。
**注意点:**使用*args
和**kwargs
是Python的习惯写法,当然也可以用其他参数名,但最好使用习惯用法。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhieebka
系列文章
更多
同类精品
更多
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
excel下划线不显示怎么办
PHP中文网 06-23 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22 -
excel打印预览压线压字怎么办
PHP中文网 06-22