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

1 自定义函数

语法

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

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

function_suite

调用

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

示例脚本

2ec18562750224f76ef7e325ac3555c5.png

输出结果

c5af15828c8f34ca48efb4cb73ad569d.png

return语句

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

f39fddfd0ad5963aad4533149374b35b.png

25a5770b345bf0b7f050a26e2ee90a45.png

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

5e1a3189b6877b5c931ebb6fcb7645c4.png

2 函数的参数形式

- 位置或关键字参数

- 仅位置参数

- 可变长位置参数

- 可变长关键字参数

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

默认参数 (default argument)

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

d58153d22bf080f4865cfef328162eca.png

d822f98386d1796acbd22b4badbb0a34.png

d321a0141322f110393d39327deedad6.png

关键字参数(keyword argument)

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

ddda450aadf942a0087f9f9074af7ed5.png

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

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

0fa2cb3af014f4e802af41552e7dab28.png

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

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

3 传递函数self()

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

4b293b7fbdab31adaf87e92e5b17c4c5.png

4 lambda函数 - 匿名函数

32016b097845f687ab4e0aacb4a12ae2.png

7d9f3e02cc7253ff83b4f2c0a213d2c8.png

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

收藏

分享

分享到:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值