【Stepik】《Python函数式编程》理论篇 - 第7课 在这最后一课里,我们详细讲解了Python的惰性计算。在前4个部分,我们介绍了迭代器和生成器,并说明了这两种工具的实用意义;在第5~7部分,我们讲解了itertools中涉及惰性计算的相关函数,介绍了send和yield from句式,并借助它们实现了属于我们自己的惰性计算工具箱;在最后的第8部分,我们借助埃氏筛、斐波那契数列和级数展开逼近这3个例子,讲解了惰性求值的重要性。
【Stepik】《Python函数式编程》理论篇 - 第6课 这一课,我们讲解了大量的与列表处理有关的函数,包括映射、过滤、累积、归约,还举了一堆例子来说明如何使用它们;我们还特地提到了Python内置的itertools模块,讲解了其中常用函数的用法;最后我们举了一个稍微复杂的例子,在一个处理流程中使用了上述所有的函数。
【Stepik】《Python函数式编程》理论篇 - 第5课 在这一课中,我们讲解了如何将运算符变成函数以供调用,提到了Python内置的operator模块;我们讲解了『偏函数』的定义,提到了functools模块中的partial函数;我们还讲解了『柯里化』的定义,提到了toolz模块中的curry函数,回顾并化简了之前课程中有参装饰器的实现。
【Stepik】《Python函数式编程》理论篇 - 第4课 在这一课中,我们介绍了λ表达式,并说明了如何在Python中进行定义,顺便还提了一下能让Python如Scala般顺滑的fn库;我们还讲解了函数之间的组合,提到了Python中的toolz库;我们最后讲解了邱琦计数法,比较了图灵机和λ演算的思维差异,还通过实际代码实现了基本的计数和数学运算,更以另外的方式定义了布尔值并实现逻辑运算。
【Stepik】《Python函数式编程》理论篇 - 第3课 系列文章目录第1课 - 纯度,一等实体和不变性第2课 - 使用递归目录系列文章目录前言第3课 - 高阶函数和装饰器模式第1部分 - 另一个例子第2部分 - 装饰器第3部分 - 装饰的门道总结注释前言在Python中,函数是一等实体,它允许我们以另一个函数作为参数来构造函数。对其他函数进行操作的此类函数通常称为高阶函数。它是一个非常强大的工具,可以为一些现有问题构建更通用的解决方案。本系列第1课提供了一个简单的示例,其中定义了toTfunc()函数,该函数采用具有多个参数的某个函数并返回采用一系
【Stepik】《Python函数式编程》理论篇 - 第2课 这一节课,我们首先讲解了递归的使用方法,如何定义一个递归函数;随后解释了为什么大多数Python开发者不喜欢使用递归,也说明了Python解释器在递归处理上的不足;接着用了4个常见的例子,对比其迭代算法和递归算法的编写难度,充分体现了递归在此类问题上的优越性;最后用1个反例说明递归思想仍有考虑不周的地方,按具体问题选择最佳的解决方案。
[Java算法] 递归法解四则运算符填充问题 题目描述设计算法,在 1~9 共九个数字之间任意添加四则运算( + - × ÷ )符号,使表达式的值为 100 。寻找成立的表达式并输出。例:1+2×3÷4+5+6-7×8-9=100(此等式仅表述输出样式,自身不成立!)注意:不可改变数字顺序,不需要将多个数值合并,每两个数字之间都要存在四则运算符。提示:使用递归算法。算法源码(Java)import static java.lang.Math.abs;/** * @author Dragon1573 */public
[IntelliJ IDEA + EduTools] 从零开始编写一套 Java 教材(三) 在上一课中,我们介绍了与 EduTools 有关的4种 YAML 文件的格式。这一课我们将着重讲解 Gradle 项目的2个核心配置文件:build.gradle 和 settings.gradle 。
[IntelliJ IDEA + EduTools] 从零开始编写一套 Java 教材(二) 上期回顾在上一课中,我们详细地讲解了如何为 IntelliJ IDEA Ultimate 安装 EduTools 插件、为教程项目配置 JDK 与 Gradle ,同时成功地创建了一个基于 Gradle 的 Java 教程项目并导入至 IntelliJ IDEA 中。一本优秀的教材通常都会将知识点分门别类、集中整合,方便师生共同学习。EduTools 将一个课程项目分成了4个层次:课程整体(Course),使用 course-info.yaml 进行配置 各章节(Section),使用 ...
[IntelliJ IDEA + EduTools] 从零开始编写一套 Java 教材(一) 在上一课中,我们讲解了如何在各个平台上安装 IntelliJ IDEA ,同时也演示了完整的 IntelliJ IDEA Ultimate 2020.2.1 的安装程序引导过程,在自己的设备上顺利地完成了集成开发环境的安装。在这一课中,我们将会讲解如何为 IntelliJ IDEA Ultimate 安装 EduTools 、JDK 和 Gradle 。
[IntelliJ IDEA + EduTools] 从零开始编写一套 Java 教材(零) 当 IntelliJ IDEA 遇上 EduTools 插件,之间又会出现什么旷世传奇呢?在这一课中,我们讲解了如何在各个操作系统上安装 IntelliJ IDEA Ultimate 。下一课,我们将着重讲解 EduTools 插件的安装和 JDK/Gradle 的配置。
[IntelliJ IDEA + Groovy] JAXBContext 依赖项与类 JaxbExtensions 环境描述IntelliJ IDEA 2020.2 (Ultimate Edition) Oracle Java Development Kit 14.0.1 Groovy 3.0.5 (installed viaScoop)问题描述当您在 IntelliJ IDEA 中创建了 Groovy 项目并尝试运行时,可能会出现与下列内容相似的报错(位于 Build 界面的 Build Output 中)。执行预编译任务...正在加载 Ant 配置…Running Ant Tasks....