函数有简明扼要的定义。
定义函数时,函数体使用def声明,并且后跟一对括号(),最后是一个冒号:
这样构成函数的基本代码结构,如下所示:
def myFunction():
// expression
按照上述函数的定义,该函数在调用时才生效,如下代码:
myFunction( )
无论函数是否有返回值,函数参数都可以有各种变化。
** 注:本文简要介绍函数有哪些参数的变化,以及具体使用方法,以便读者更好地了解和掌握函数用法。
以下的编程,采用命令行提示符交互式解释器。
函数的默认参数,有时候也成为可选参数。定义函数时,如果参数提供默认值,则称为默认参数。
默认参数是作为备选的。如果用户调用函数时,忘记或者没有为该参数提供任何值,那么,函数就是用事先定义好的默认值参数。
示例一: 代码如下,默认姓名(name) 为“Angela”。
>>> def func(name = "Angela"):
... print("Happy Birthday!", name)
...
>>> func()
Happy Birthday! Angela
可以看到,在调用func()函数时,没有传递参数,故输出使用默认参数。
关键字参数,是指调用函数并传递值,但不考虑其位置;调用函数时使用参数名并为其赋值。
示例二: 代码如下,注意在调用时传递值。
>>> def func(n1, n2):
... print("Happy Birthday!", n1, " and ", n2, "!!!")
...
>>> func(n2="Leonardo", n1="Marcia")
Happy Birthday! Marcia and Leonardo !!!
当用户不确定函数的参数个数时,可使用可变长度参数来定义函数。
1) 创建函数时,在参数前放置星号“*”,这样一来,从这点到末尾的所有位置参数,都作为元组元素;
2) 此外,如果将双星号“**”放在参数名称前面,则表示从该点到末尾的所有位置参数都作为字典元素。
示例三: 代码如下所示,看看输出结果。
>>> def func(*name, **age):
... print("Welcome!", name)
... print("Your age is:", age)
...
>>> func("Leonardo", "Melissa", "Maggie", Leonardo = "28", Melissa = "39", Maggie = "5")
Welcome! ('Leonardo', 'Melissa', 'Maggie')
Your age is: {'Leonardo': '28', 'Melissa': '39', 'Maggie': '5'}
总而言之,无论是哪种参数,在规划和创建函数时,就要考虑周全,让函数发挥出效能,同时避免在大型项目中出错,造成资源浪费。
技术好文陆续推出,敬请关注。
您的认可,我的动力!