Python培训
400-996-5531
欢迎大家来到自学Python教程教室,上一讲我们分享了函数的参数传递的相关内容,这节课我们接着上一次的内容,来介绍一种更加灵活的参数传递方式:def func(*args).
这种方式的厉害之处在于,它可以接受任意数量的参数。来看具体例子:
def calcSum(*args): sum = 0 for i in args: sum += i print sum
调用:
calcSum(1,2,3) calcSum(123,456) calcSum()
输出:
6 579 0
在变量前加上星号前缀(*),调用时的参数会存储在一个 tuple(元组)对象中,赋值给形参。在函数内部,需要对参数进行处理时,只要对这个 tuple 类型的形参(这里是 args)进行操作就可以了。因此,函数在定义时并不需要指明参数个数,就可以处理任意参数个数的情况。
不过有一点需要注意,tuple 是有序的,所以 args 中元素的顺序受到赋值时的影响。如:
def printAll(*args): for i in args: print i, print
调用:
printAll(1,2,3) printAll(3,2,1)
输出:
1 2 3 3 2 1
虽然3个参数在总体上是相同的,但由于调用的顺序不一样,结果也是不同的。
还有一种参数传递方式,既可以按参数名传递参数,不受位置的限制,又可以像 tuple 传递一样不受数量限制。这个我将在下次课中做介绍。
恭喜您在Python自学的道路上又坚持了一天,今天我们开始了Python中函数的参数传递(2),下节课我们将分享更多Python中函数的参数传递的相关内容,敬请关注 !
免责声明:内容和图片源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
Copyright © 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有
Tedu.cn All Rights Reserved