每天5分钟,python速成(29)
首先明确学习目标,今天的目标是认识python中的不定长参数
不定长参数
有时可能需要一个函数能处理比当初声明时更多的参数, 这些参数就叫做不定长参数
通过观察函数*args位置输出结果观察理解
1,加了星号(*)的变量args会存放所有未命名的变量参数,args为元组,
结果会自动在sum_nums(a, b, c=0, *args) 后面赋值def sum_nums(a, b, c=0, *args): result = a + b + c print("-" * 10) print(a) print(b) print(c) print(args) print(result) sum_nums(11, 22) sum_nums(11, 22, 33) sum_nums(11, 22, 33, 44) #输出结果 11 22 0 () 33 ---------- 11 22 33 () 66 ---------- 11 22 33 (44,) 66 结果会自动在sum_nums(a, b, c=0, *args) 后面赋值
2,当缺省参数在*args后面时并不会赋值给缺省参数新的数据
sum_nums_(a, *args, b=22, c=33)def sum_nums_(a, *args, b=22, c=33): print(a) print(b) print(c) print(args) sum_nums_(100, 200, 300, 400, 500, 600, 700) 输出结果 100 22 33 (200, 300, 400, 500, 600, 700)
有点绕口,大概了解,有个概念就行,观察输出值差异,不用太纠结,基础学习有个概念,后面学习中再巩固复习