# 函数的位置参数必须要传实参,可以按位置,也可以按关键字传# 函数的默认参数可以不传实参,可以按位置,也可以按关键字# 不定长参数*args只收集位置参数形成元组,不定长参数应放在后面,要不会把实参当做位置参数然后报错# 用**,只要定义了关键字参数,以后针对这个参数传值就必须是关键字形式传递# 关键字参数和关键字传值必须放在位置参数(实参)后面# def add_num(list1 = []): # 运行第二次以后里面的默认参数不会执行,会把第一次运行完的结果当做关键字参数放入# list1.append(100)# print(list1)# add_num()# add_num()# add_num()# 函数:每个用户去调用函数,在自己的列表中追加100,不能干扰别人的# def add_num(list1=None):# if list1==None:# list1 = [] # 针对每个用户创建自己的list# list1.append(100)# print(list1)# add_num()# add_num()# add_num()# *args:位置参数,收集成元组# def func1(name,*args,age=12):# print(args)# for i in args:# print(i)# func1('python', 'man','meiguo', age=28)# **kwargs :收集关键字参数,合并字典# def func2(**kwargs):# print(kwargs)# for key,value in kwargs.items():# print(key)# print(value)# func2(name='python',age=28,sex='man',weizhi='helan')# 定义关键字参数def func1(*,name,age,sex,**k): print(name) print(age) print(sex) print(k)## func1('python', 28,sex='man')func1(name='python', age=30, sex='nv', aw='as',ad=22)# 工作经验:不定长参数都是放到最后def func1(a,b, c=100, *args, **kwargs): ''' sadasdada # 函数说明文档,使用help可查看,函数名前用# ,函数名后用文档注释 ''' print(a) print(b) print(c) print(args) print(kwargs)# 不定长参数可以不接收值func1(10,99, 20, f=200, d=90) # 函数是按顺序接收,如果提前把关键字参数给了实参help(func1) # 则后面紧跟着的是函数里写形参位置,关键字参数后面的要传入实参的形式# c是第三个位置,能接收第三个数据# func1(10, 20, 300)# func1(10, 20, 30, 40,50,60,name='python')# 下一行报错:一个参数c只能接收一个值:这里是c接收了30和100# func1(10,20,30,50,60, c=100,name='python')
------- 知识无价,汗水有情,如需搬运请注明出处,谢谢!
版权声明
本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。



