没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
我们可以总结出函数式编程的一些特点:
1. 变量是不可变的:它避免了数据流动带来的副作用,不会依赖或改变当前函数以外函数;
2. first class functions:允许函数可以像变量一样来使用,函数可以赋给某个变量,或像变量一样传递,或者在函数中嵌套某个函数;
3. higher order function:高阶函数,接收某个函数作为参数的函数称为高阶函数;
4. 尾递归优化:函数调用是通过 stack 实现的,深度递归可能会导致栈溢出,所以可以采取尾递归优化,它具体是指在函数返回的时候,调用函数本身,同时 return 语句不能包含表达式。当然这需要编译器的支持,遗憾 Python 编译器并不支持;
5. 闭包(closure) :闭包是绑定了外部作用域的变量(但不是全局变量)的函数。大部分情况下外部作用域指的是外部函数; 换句话说,如果一个函数定义在另一个函数的作用域中,并且函数中引用了外部函数的局部变量,那么这个函数就是一个闭包,由于闭包不是立即执行,所以闭包中不应该引用循环变量或后续会发生变化的变量!
Python 对函数式编程提供部分支持,在函数式编程中,程序的循环、迭代、控制都可以通过函数完成,**函数是“第一等”公民**:
| **内建** | **描述** |
| ------------------------------ | :--------------------------------------- |
| `lambda` | 匿名函数 |
| `filter(func, seq)` | 调用一个布尔函数func来迭代遍历每个seq中的元素;返回一个使func返回值为true的元素的序列*(可以通过列表的综合�
点击阅读更多
资源评论
张博士-体态康复
- 粉丝: 29
- 资源: 307
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 5122622023002林晶晶 实验1 认识CPU.doc
- 1
- 基于Vue的covid19-visualization疫情可视化系统设计源码
- 基于STM32驱动MLX90614红外测温模块和OLED屏幕,测温的同时如果超过37度会在屏幕上显示报警信息
- Stability.postman-collection.json
- SQL 语言入门篇-最常用 SQL 语句大全
- mysql查询语句汇总.zip
- typora-x64-v0.9.93,windows,64位,markdown工具,文本编辑器
- 基于C语言的neon_osd_Draw ARM Neon加速OSD点阵设计源码
- 目标检测-工地工人安全设备佩戴检测数据集-3500张图-+对应VOC-COCO-YOLO三种格式标签+数据集划分脚本+训练日志
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功