Kotlin的高阶函数和常用高阶函数 文章来源:企鹅号 - Android先生 高阶函数的定义 将函数当做参数或者是返回值的函数 什么是高阶函数 可以看看我们常用的 函数: 首先我们可以知道, 是 的扩展函数,然后参数是 ,但是 不再像和我们以前Java那样传递的是一个对象,这时传递的是一个函数.这个函数的入参为 ,返回值为 .所以 也是一个高阶函数,因为它将函数当做参数进行传递了.我们尝试着去调用一下 函数: 调用的时候,我们将 函数传递给了 函数,这里采用的是函数引用.就上诉代码,我们还可以…
本节内容 1.介绍 2.具体实用 3.eval()函数 一.介绍 高阶函数:变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数. 二.具体实用 其实说白了,高阶函数功能就是:把函数本身当做一个参数,传到另一个函数中,然后在这个函数中做处理.代码如下: #普通函数 def test_1(a,b): return a+b #高阶函数 def test_2(a,b,f): return f(a)+f(b) print("------test_1-----") r…
一.常用内置函数 1.表格 二.内置函数详情(1-10) 1.abs(x) 功能:取数的绝对值 1 2 >>> abs(-1)  #取-1的绝对值 1 2.all(iterable) 功能:如果这个可迭代的元素都为真,则返回真(非0的就为真,负数也是为真) 1 2 3 4 >>> all([0,1,3])   #有0,说明为假 False >>> all([1,-5,6])  #负数也是为真 True 3.any(iterable) 功能:可迭代的元素…
重点掌握 字符串格式化format() 字符串格式化百分号 判断 转换 数据类型 帮助信息 map和filter()函数 局部变量全局变量 计算内置函数 常用内置函数(其他) 后续会讲 不常用…
本节内容 作用域.局部和全局变量 递归 函数式编程 高阶函数和eval()函数 一.概述 在函数内部,可以调用其他函数.但是一个函数在内部调用自身,这个函数被称为递归函数. 二.简单介绍 那递归具体是怎么实现的呐?下面我们就来看看如下代码: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 def calc(n):     print(n)     if int(n/2) == 0:  #结束符         return n     return calc(int(n/…
本节内容 概述 课前前引 局部变量和全局变量 总结 一.概述 我们之前写代码,都需要声明变量,但是我们思考过变量的作用范围吗?今天我们就来讲讲变量的作用范围,这个作用范围又叫作用域.首先我们根据变量的作用范围把变量分为:局部变量和全局变量,即: 局部变量 全局变量 二.课前前引 我们先做一个小实验:一个函数体内部调用另外一个函数,代码如下: def test(name,age=28,**kwargs): print(name) print(age) print(kwargs) logger("t…
本节内容 1.简述 2.简单用法 3.复杂日志输出 4.handler详解 5.控制台和文件日志共同输出 一.简述 很多程序都有记录日志的需求,并且日志中包含的信息即有正常的程序访问日志,还可能有错误,警告等信息输出,python的logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,logging的日志可以分为debug,info,warning,error和critical 5个级别,下面我们就来看看这个日志模块logging怎么用 二.简单用法 1.简单用法 说明:日志级…
本篇内容 内置函数 匿名函数 re模块 time模块 random模块 os模块 sys模块 json与pickle模块 shelve模块 一. 内置函数 1.定义 内置函数又被称为工厂函数. 2.常用的内置函数 (1)abs() #!/usr/binl/env python #encoding: utf-8 #author: YangLei print(abs(-1)) (2)all() #!/usr/binl/env python #encoding: utf-8 #author: Yang…
内置函数2 装饰器 字符串格式化 生成器 迭代器 递归 模块 序列化相关 time模块 datetime模块 内置函数2 callable() # 是否可以被执行,是否可以被调用 chr() # ascii转字符 ord() # 字符转ascii compile() # 编译 eval() # 执行 exec() # 执行 dict() dir() # 快速查看对象为提供了哪些功能 help() # divmod() #输出(商,余数) isinstance() # 判断对象是否是某个类的实例…
set集合 函数 三元运算 lambda表达式 内置函数1 文件操作 set集合 创建 se = {"123", "456"} # 直接创建一个集合 se = set(list) # 将列表转化成集合 功能 s = set() # 创建一个集合 s.add(123) # 添加一个元素 s.clear() # 清除元素,清空 s1 = {11,22,33} s2 = {22,33,44} s3 = s1.difference(s2) # s1中存在,s2中不存在 赋值…