【Python】函数进阶 - 纯函数

1. 概念

一个函数的返回结果只依赖于他的参数,并且只执行过程里面没有副作用,我们就把这个函数叫做纯函数

2. 3个原则

  1. 变量都只在函数作用域内获取,作为函数的参数传入
  2. 不会产生副作用,不会改变被传入的数据或者其他数据(全局变量)
  3. 相同的输入保证相同的输出

以上原则中,函数的副作用需要解释一下:
副作用是指函数被调用,完成可函数既定的计算任务,但同时因为访问了外部数据,尤其是因为对外部数据进行了写操作,从而一定程度的改变了系统环境。

3. 示例

# 函数func1返回的结果为两个参数相加的结果
def func1(a, b):
    return a + b

var1 = 100
# 函数func2返回的结果为参数a和外部变量var1相加的结果
def func2(a):
    return var1 + a

# 在上面的两个案例中,func1返回的结果只受传入的参数的影响,而func2不仅受传入参数的影响而且还会受外部变量var1的影响,
像func1这样的返回值只跟传入参数有关的函数我们把它叫做纯函数

最后总结一下:
如果你对此文有任何疑问,如果你也需要接口项目实战,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣欢迎加入:软件测试技术群:593462778,群里的免费资料都是笔者十多年测试生涯的精华。还有同行大神一起交流技术哦。

作者:暗潮汹涌
原创不易,欢迎转载,但未经作者同意请保留此段声明,并在文章页面明显位置给出原文链接。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值