美文网首页
Python函数中传递任意数量的实参(77)

Python函数中传递任意数量的实参(77)

作者: 一日歌 | 来源:发表于2017-08-22 23:59 被阅读38次

函数就好比是你厌倦了重复差不多内容的功能,这些功能都会耗费很多同样的代码。

为了简洁起见,可以把这些内容都封装为函数。这样,只要一行就可以实现原来很多行代码的功能。这些函数还可以根据传递的不同命令内容来决定具体函数的功能。这些命令内容叫参数。

有时候,你预先不知道函数需要接受多少个实参,好在Python允许函数从调用语句中收集任意数量的实参。

python大大的图

我的图

这是一个制作比萨的函数,它需要接受很多配料,但你无法预先确定顾客要多少种配料。形参名*toppings中的星号让Python创建一个名为toppings的空元组,并将收到的所有值都封装在这个元组中。

Python能够处理使用一个值调用函数的情形,也能处理使用三个值来调用函数的情形。它以类似的方式处理不同的调用,注意,Python将实参封装到一个元组中,即便函数只收到一个值也是如此。

第八行直接规定要取出元组中的第一个和第二个元素,但是很明显在pepperoni这个元组中只有一个元素,因此会报错说元组索引超出范围。根本就没有toppings[1]这个元素嘛!

但是如果元组中元素确保大于等于2的时候就不会有这样的问题


相关文章

网友评论

      本文标题:Python函数中传递任意数量的实参(77)

      本文链接:https://www.haomeiwen.com/subject/ltmrdxtx.html