1 自定义函数
语法
def function_name([arguments]):# 小括号内可以没有参数,但小括号不能省略。
‘optional documentation string’# 函数的注释(又:DocString),查看命令:print(fn.__doc__),fn为函数名,doc前后各两条下划线
function_suite
调用
fn() # 即使没有参数,小括号也不能省略。
示例脚本
输出结果
return语句
终止函数,并可返回值(如return 0)以方便外部调用,但并无print功能。
以下是一个错误的判断素数的函数,它将只会返回输入值是否为奇数。原因就在于,第2个if…else语句中有return,使得for循环终止,即for循环只迭代了一次,也就是j只取到了2。
2 函数的参数形式
– 位置或关键字参数
– 仅位置参数
– 可变长位置参数
– 可变长关键字参数
(参数可以设定默认值 – 默认参数)
默认参数 (default argument)
函数的参数可以有一个默认值,如果提供默认值,在函数定义中,默认参数以赋值语句的形式提供。默认参数一般放在函数列表的最后。
关键字参数(keyword argument)
让调用者通过使用参数名区分参数,且允许改变参数列表中的参数顺序。但需要注意的是,调用函数时,要么都不使用关键字参数,要么必须全部使用关键字参数的形式。
可变长位置参数 – 元组参数
用一个长度可变的元组来接收没有直接定义的位置参数,该参数称为可变长位置参数。调用时,需在可变长位置参数前加一个星号*。
可变长关键字参数 – 字典参数
用一个长度可变的字典来接收没有直接定义的关键字参数,该参数称为可变长关键字参数。调用时,需在可变长关键字参数前加两个星号**。
3 传递函数self()
函数可以像参数一样传递给另外一个函数。
4 lambda函数 – 匿名函数
转载本文请联系原作者获取授权,同时请注明本文来自刘洋洋科学网博客。
链接地址:http://blog.sciencenet.cn/blog-3031432-1058279.html
上一篇:Python: 赋值
下一篇:Python:批量注释