码迷,mamicode.com
首页 > 编程语言 > 详细

python 各种参数类型

时间:2020-06-08 12:31:27      阅读:82      评论:0      收藏:0      [点我收藏+]

标签:mvc   int   spi   vlc   tin   实参   wss   vsc   **kwargs   

1.实参和形参

形参:也叫形式参数,相当于我们数学里面学的一元二次方程里面的变量参数,只有被赋值才有实际意义。

实参:我们实际使用函数时传入的参数。

两者关系用下图表示

技术图片

2. 默认值参数(缺省参数)
在定义函数时,函数中的形式参数,被赋值,这个值就是默认值
当在函数调用时,如果给定了值,那么就使用给定值,如果没有给定值,那就使用默认值
def hahh(a,b=3,d=4): 
    print(a,b,d)
hahh(1) 

输出:
1 3 4
注意:
默认值参数只能出现在参数列表的最右侧
 
3. 位置参数
实参
使用位置参数时,因为类型的原因,那么实参的顺序要和形参的顺序完全一致
当没有默认值的情况下,参数的个数和也要一致
 
4. 关键字参数
形参
在定义形式参时,每个参数都可以理解成一个key
使用这个key,可以明确的为当前这个参数进行赋值
使用关键字参数,可以忽略参数的顺序问题
 
def show(n,s):
    for c in s:
        print(f{n} -- {c})
show(s=hello,n=1)
①直接按照顺序传递实参,叫做位置方式传参
②将形式参数的名字写上,按照赋值语句的格式传递,叫做关键字方式传参,并且全是关键字实参的时候,没有顺序要求.
③位置方式和关键字方式可以混用.
④混合使用的时候注意,关键字方式传参,只能写在位置方式的后面,并且顺序不能混乱.
 
5. 不定长位置参数
*args 在参数中定义了该形参后,那可以通过 *args 接收多个不确定个数的位置参数
def hah(*args):
    i = 1
    for x in args:
        i *= x
    print(i)
hah(1,2,3,4)

 

6. 不定长关键字参数
**kwargs 在参数中定义了该形参后,那可以通过 **kwargs 接收多个不确定个数的关键字参数
def show(**kwargs):
    print(kwargs)
show(a=1)
show(a=1, b=2)
show(a=1, b=2, c=3) 
重点:
记住这种函数定义格式:当定义函数时,如果函数的参数想接收任意类型和个数,那么定义格式如下:
 
def 函数名(*args, **kwargs):
        函数体内容
 
7. 混合参数(了解)
如果很多个值都是不定长参数,那么这种情况下,可以将缺省参数放到 *args的后面, 但如果有**kwargs的话,**kwargs必须是最后的
 
def func(a,b,c,d,e, *args,f=1,g=2,**kwargs):
        函数体代码

 

 

python 各种参数类型

标签:mvc   int   spi   vlc   tin   实参   wss   vsc   **kwargs   

原文地址:https://www.cnblogs.com/tanhuan-share/p/13064799.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!