当前位置: 首页 > news >正文

9. 函数和匿名函数(一)

目录

1. 函数式编程范式

2. 函数基础

3. 默认参数(Default Argument Values)

4. 关键字参数(Keyword Arguments)

5. 可变参数(Variadic Arguments)

5.1 位置可变参数

5.2 关键字可变参数(Keyword Variadic Arguments)

5.3 通用参数

5.4 星号(*)的含义

6. 仅关键字参数(Keyword-Only Parameters)

7. 仅位置参数(Positional-Only Parameters)

位置参数VS关键字参数


1. 函数式编程范式

Python在函数中提供了惊人多样性,函数是第一等公民,因此它和其他对象没有任何区别。Python为函数式编程提供完全支持,也包含了lambda以及匿名函数这些概念。

首先了解下什么是函数式编程。

我们可能都使用过过程式编程或者面向对象编程。这两种编程范式都是命令式,即通过具体过程描述如何实现目标。

过程式编程围绕控制块比如if else ,while,for等进行组织代码,重点关注控制流。

面向对象编程范式围绕类和对象进行组织,重点关注状态,特别是这些对象的属性。

函数式编程式中,需要为每个步骤编写一个函数,每个函数接收一个输入并产生一个输出,并且只做一件事,不关心程序其余部分。而且函数式没有状态的,它们是不会存储任何信息。每次调用相同输入,函数都会生成相同输出。

函数式编程范式是围绕纯函数进行组织的。纯函数就是没有副作用且只做一件事。

在函数式编程中有几个非常重要的点或者规则:
1. 每个函数都应该只做一件事。
2. 一个函数的实现方式不应该影响程序其他部分的行为。
3. 要避免副作用!
4. 函数是无状态的,也不受外部状态影响,即相

http://www.xdnf.cn/news/1406071.html

相关文章:

  • 快消品牌如何用 DAM 管理万张素材?
  • 【光照】[光照模型]是什么?以UnityURP为例
  • C++的反向迭代器
  • BEV-VAE
  • 二进制方式安装部署 Logstash
  • Java试题-选择题(23)
  • 【Linux基础】深入理解计算机启动原理:MBR主引导记录详解
  • 并发编程:Java中的多线程与线程池!
  • 魔方的使用
  • LangGraph 深度解析(二):掌握 LangGraph 函数式 API 的状态化 AI 工作流
  • 每日算法题【二叉树】:堆的实现、堆排序的实现、文件中找TopK
  • [光学原理与应用-338]:ZEMAX - Documents\Zemax\Samples
  • 吴恩达机器学习作业九:kmeans聚类
  • 2025最确定性的答案:AI+IP的结合
  • CNB远程部署和EdgeOne Pages
  • 恶补DSP:3.F28335的ePWM模块
  • Wheat Gene ID Convert Tool 小麦中国春不同参考基因组GeneID转换在线工具
  • TensorFlow 深度学习 | 使用底层 API 实现模型训练(附可视化与 MLP)
  • 「日拱一码」066 深度学习——Transformer
  • ADB常用命令大全
  • Linux中的Shell编程 第一章
  • 第09章 t检验:两独立样本t检验
  • 模拟|双指针
  • 【CUDA进阶】MMA分析Bank Conflict与Swizzle(下)
  • python pyqt5开发DoIP上位机【介绍】
  • 【cancelToken取消重复请求】
  • uniapp开发 移动端使用字符串替换注意事项
  • GEE中上传研究区域范围
  • ModuleNotFoundError: No module named ‘_cffi_backend‘
  • 服务器CPU飙升该如何排查火焰图