python自定义函数参数_科学网—Python:自定义函数和函数参数 – 刘洋洋的博文

  • Post author:
  • Post category:python


1 自定义函数

语法

def function_name([arguments]):# 小括号内可以没有参数,但小括号不能省略。

‘optional documentation string’# 函数的注释(又:DocString),查看命令:print(fn.__doc__),fn为函数名,doc前后各两条下划线

function_suite

调用

fn() # 即使没有参数,小括号也不能省略。

示例脚本

220145dqk5qoqwhkckihw5.png

输出结果

220146zmnf12bf2baf1wvb.png

return语句

终止函数,并可返回值(如return 0)以方便外部调用,但并无print功能。

2207432ywnvdhixmnnsdlm.png

220743bff1kmqhkr9ccemz.png

以下是一个错误的判断素数的函数,它将只会返回输入值是否为奇数。原因就在于,第2个if…else语句中有return,使得for循环终止,即for循环只迭代了一次,也就是j只取到了2。

23430194z74riu44i7949i.png

2 函数的参数形式

– 位置或关键字参数

– 仅位置参数

– 可变长位置参数

– 可变长关键字参数

(参数可以设定默认值 – 默认参数)

默认参数 (default argument)

函数的参数可以有一个默认值,如果提供默认值,在函数定义中,默认参数以赋值语句的形式提供。默认参数一般放在函数列表的最后。

015039ydyrruhmoxu5dr0f.png

020258hvee5vrbh5lpx7zp.png

020259wqau86nqch9ccau8.png

关键字参数(keyword argument)

让调用者通过使用参数名区分参数,且允许改变参数列表中的参数顺序。但需要注意的是,调用函数时,要么都不使用关键字参数,要么必须全部使用关键字参数的形式。

021247zq5idr4575zfa1rz.png

可变长位置参数 – 元组参数

用一个长度可变的元组来接收没有直接定义的位置参数,该参数称为可变长位置参数。调用时,需在可变长位置参数前加一个星号*。

172405tnqsc0cbbpbebczz.png

可变长关键字参数 – 字典参数

用一个长度可变的字典来接收没有直接定义的关键字参数,该参数称为可变长关键字参数。调用时,需在可变长关键字参数前加两个星号**。

3 传递函数self()

函数可以像参数一样传递给另外一个函数。

02182726tblltcdzcfxfcf.png

4 lambda函数 – 匿名函数

022544twua12o82uq2vsm0.png

022836g0wtf56w99awpyy6.png

转载本文请联系原作者获取授权,同时请注明本文来自刘洋洋科学网博客。

链接地址:http://blog.sciencenet.cn/blog-3031432-1058279.html

上一篇:Python: 赋值

下一篇:Python:批量注释