排序也是在程序中经常用到的算法。无论使用冒泡排序还是快速排序,排序的核心是比较两个元素的大小。如果是数字,我们可以直接比较,但如果是字符串或者两个dict呢?直接比较数学上的大小是没有意义的,因此,比较的过程必须通过函数抽象出来。 Python内置的sorted()函数就可以对list进行排序: 此 ...
分类:
编程语言 时间:
2018-07-08 12:42:00
阅读次数:
145
函数编程的特征: 1不可变:不用变量保存状态,不修改变量 return可以返回任何数值,包括自己 高阶函数: 把函数当做参数传给另一个函数 返回值包括函数 两个有一个就是高阶函数 尾递归优化,尾递归,函数最后一步是递归函数 其好处是可以释放上一层次的内存,优化运行效率 ...
分类:
编程语言 时间:
2018-07-07 23:08:02
阅读次数:
183
闭包 闭包 Python的函数时可以嵌套的,可以将一个函数放在另外一个里面。 def multiplier(factor): def multiplyByFactor(number): return number*factor return multiplyByFactor 调用multiplier ...
分类:
编程语言 时间:
2018-07-07 23:06:50
阅读次数:
216
高阶函数代码形式:(1.函数接收的参数是一个函数名 2.函数的返回值是一个函数名) def too(): print('from too') #高阶函数 def foo(): print('from foo') return too a = foo() a() def too(): print('f... ...
分类:
其他好文 时间:
2018-07-07 20:10:27
阅读次数:
175
## 高阶函数 - 接受函数为参数的函数称为高阶函数 - 在Python中函数名也是变量,函数体就是这个变量的值,是变量就可以重新赋值,取代原有绑定 ## 常用内建高阶函数 - map(fn, iterable) - 此函数接受两个参数,第一个参数为函数,第二个参数为可迭代对象 - map()函数执 ...
分类:
编程语言 时间:
2018-07-01 10:27:07
阅读次数:
178
1. 匿名函数 lambda:一个语法,三个特性,四个用法 语法: lambda argument_list: expressionargument_list 和 expression 由用户自定义 (1)argument_list 是参数列表。它的结构与 python 中函数的参数列表是一样的。 ...
分类:
编程语言 时间:
2018-06-30 12:40:43
阅读次数:
139
(1)字符串反转 1倒序输出 2 列表reverse()操作 3 二分法交换位置 4 列表生成式 5 栈的思想 6 递归的思路 (2)冒泡排序 采用循环 采用数组中的partition,用递归实现 传入的第一个参数是 ,即函数对象本身。由于结果 是一个 ,`Iterator list()`函数让它把 ...
分类:
编程语言 时间:
2018-06-29 11:14:01
阅读次数:
174
装饰器本质上,装饰器就是一个返回函数的高阶函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。概括的讲,装饰器的作用就是为已经存在的对象添加额外的功能。比如:插入日志、性能测试、事务处理、缓存、权限校验等场景。装饰器是解决这类问题的绝佳设计,有了装饰器,我们就可以抽离出大量与函数功能本身无关的雷同代码并继续重用。deffoo():print(‘iamf
分类:
编程语言 时间:
2018-06-26 21:53:56
阅读次数:
204
在上面一个章节中,详细的讲解了 中关于 表达式的语法以及运用,如果还您对其还不甚理解,请参见 "Kotlin——高级篇(一):Lambda表达式详解" 。在这篇文章中,多次提到了 中关于 高阶函数 的内容,故而在这一篇文章中会详解的对 高阶函数的方方面面。 目录 一、高阶函数介绍 在介绍高阶函数之前 ...
分类:
其他好文 时间:
2018-06-25 18:54:59
阅读次数:
283
Python之函数 标签(空格分隔): 函数 现在老板要求你写一个监控程序,24小时全年无休的监控你们公司的网站服务器的系统的状况,当CPU、memory、disk等指标的使用量超过阀值时即发邮件警报 1. 你会采取如下的方法: 2.上述代码是实现了功能但是重复代码太多了:不易维护,如果日后需要修改 ...
分类:
编程语言 时间:
2018-06-24 00:40:46
阅读次数:
224