函数的操作及使用"/>
Python基础编程(二)——定义函数的操作及使用
上次我们讨论了Python的控制语句的使用和常用的基础函数,简要介绍了自定义函数def 语句的用法。这一章继续讨论def 语句定义函数的详细操作和使用。
一、传递任意数量的实参
二、传递位置实参和任意数量的实参
三、传递任意数量的关键字实参
四、将函数储存在模块中
def 语句定义函数的使用
一、传递任意数量的实参
有时,我们预先不知道函数需要接受多少个实参,好在Python允许函数从调用语句中收集任意数量的实参。
def make_pizza(*toppings):
"""打印顾客点的所有配料"""print(toppings) make_pizza('pepperoni') # 传递一个参数
make_pizza('mushrooms', 'green peppers', 'extra cheese') # 传递多个参数
这是一个制作比萨的函数,它需要接受很多配料,但我们无法预先确定顾客要多少种配料。下面的函数只有一个形参*toppings ,在形参前加上星号,不管调用语句提供了多少实参,这个 形参都会将它们统统传递过去。
调用函数之后,输出结果如下:
('pepperoni',)
('mushrooms', 'green peppers', 'extra cheese')
接收到的实参,都会以元组的形式被封装起来,即使只收到一个实参也是如此。
二、传递位置实参和任意数量的实参
如果要结合使用位置实参和任意数量的实参,在定义函数时,必须把接收任意数量实参的形参放到最后。在Python中,先匹配位置实参和关键字实参,再将余下的实参都收集到最后一个形参中。如下面的制作披萨的例子。
# 加入一个尺寸的参数
def make_pizza(size,*toppings):
"""对要制作的披萨进行一个概述"""print("\nMaking a " + str(size) + "-inch pizza with the following toppings:") for topping in toppings: print("- " + topping) make_pizza(16,'pepperoni')
更多推荐
Python基础编程(二)——定义函数的操作及使用
发布评论