Python学习---py14 函数参数

函数的定义与使用

定义函数的基本结构

def 函数名(参数列表):

当前函数的具体功能的代码

。。。。

函数封装并不会执行,只是定义了,如果要使用定义的函数,需要进行函数的调用

函数调用

函数名()

def love():
    print('I')
    print('love')
    print('you')
love()

I
love
you
>>> 

函数定义后,不调用不执行        不能在函数定义前调用函数        函数的调用不受次数的限制

函数名不要冲突,冲突会被覆盖 

函数参数

在定义函数时,小括号内可以定义形参

def love(num):
    print(f'I love you {num}') 
love('小花')

I love you 小花
>>> 


def love(x,y):
    print(f'{x}I love you {y}') 
love('小花','小刚')

小花I love you 小刚
>>> 

普通参数

就是位置参数,也叫顺序参数,是必须传递的参数

默认参数

如有三个参数,x,y,z,至少要传递两个,这时最好一个参数就是默认参数,默认参数需要在定义形参时指定默认值

def love(x,y,z=100):
    print(x,y,z) 
love(1,2)

1 2 100
>>> 

收集参数

定义一个形参,收集多余的实参 

在定义函数时,如果是收集参数,需要在形参前面加一个*,例如*args

接收多余的参数,会存储在args中,形成一个元组

def han(x='+',*args):
    if x=='+':
        print('加法运算',args)
    else:
        print('减法运算',args)
han('+',12,15,18)

加法运算 (12, 15, 18)
>>> 

关键字参数

关键字参数定义在收集参数之后

关键字参数必须通过形参的名字来进行传递

def love(a,b,c=3,*args,name):
    print(a,b,c,args)
    print(name)
love(1,2,4,123,124,125,name='张三')

1 2 4 (123, 124, 125)
张三
>>> 

 

关键字参数收集

def func(a,b,c=3,*args,name,age,**kwargs):
    print(a,b,c)
    print(args) #普通收集函数。会把多余的参数收集为 元组
    print(name,age)
    print(kwargs)   #关键字参数收集,会把多余的参数收集为 字典
func(1,2,4,55,50,45,name='xiaozhang',age=25,sex='m',tel='12306',address='beijing')



1 2 4
(55, 50, 45)
xiaozhang 25
{'sex': 'm', 'tel': '12306', 'address': 'beijing'}
>>> 

注意形参声明的位置

普通参数,默认参数,收集参数,关键字参数,关键字收集参数

很少出现五种参数

你可能感兴趣的:(python)