2017年5月24日

匿名函数lambda与偏函数

摘要: 匿名函数可以不需要函数名,直接返回表达式结果,如下所示: lambda x:x*x 该匿名函数接受输入参数x,返回x*x作为结果,也可以不要输入参数,如下所示作为返回函数: def build(x,y) return lambda:x*x+y*y 偏函数 如上述代码所示,可以利用functools. 阅读全文

posted @ 2017-05-24 22:10 vonkimi 阅读(116) 评论(0) 推荐(0) 编辑

返回函数

摘要: 正常的函数如下所示: 但如果函数返回值是一个函数,示例如下: 可以看出被返回的函数不带参数,但是它可以引用外部函数如lazy_sum的参数,返回函数名,该函数不立即执行,而是等调用时,使用函数名+()再执行,同样的参数调用返回的函数都是一个新的函数。 调用示例如下: 可以看出直接调用lazy_sum 阅读全文

posted @ 2017-05-24 21:12 vonkimi 阅读(169) 评论(0) 推荐(0) 编辑

2017年5月23日

sorted排序

摘要: 排序函数sorted原型如下,接受一个可迭代的序列,可以自定义排序函数放在key中,可以对待排序序列先期进行处理,还可以指定正反序 sorted(iterable, /, *, key=None, reverse=False) Return a new list containing all ite 阅读全文

posted @ 2017-05-23 22:09 vonkimi 阅读(107) 评论(0) 推荐(0) 编辑

filter---埃氏筛法

摘要: 学到了filter,看到这个埃氏筛法求质数的程序,觉得挺有意思的。 思路如下: 1、首先得到一个从3开始的奇数iterator it 2、从iterator it中取首个数,该数为质数,第一轮即为3 3、然后运用filter,其中筛选函数为_not_divisible(n),n=3,此时it已经去除 阅读全文

posted @ 2017-05-23 20:09 vonkimi 阅读(154) 评论(0) 推荐(0) 编辑

2017年5月15日

filter

摘要: 看到一个比较有趣的程序 def not_empty(s): return s and s.strip() print(list(filter(not_empty, ['A', '', 'B', 'C ',None, ' ']))) 结果是['A', 'B', 'C '] 这里的函数我本来自己写成如下 阅读全文

posted @ 2017-05-15 23:21 vonkimi 阅读(101) 评论(0) 推荐(0) 编辑

函数式编程

摘要: 1、变量可以指向函数 2、函数名即为变量 3、函数可以作为另外一个函数的传入参数,这样另一个函数即为高阶函数 4、map函数 map()函数接受两种参数,map(f,Iterable),其中f为函数变量,Iterable为可迭代的对象,如list或者tuple或者dict等 map()函数的作用是把 阅读全文

posted @ 2017-05-15 22:42 vonkimi 阅读(96) 评论(0) 推荐(0) 编辑

2017年5月13日

列表生成式、生成器、迭代

摘要: 一、列表生成式 1、range()可以生成整数序列 range(a,b)生成a-b的整数序列,包括a,但不包括b range(n)生成0-n的整数序列,包括0,但不包括n 将整数序列转成list,可以使用list(range(n)) 2、可以在列表中加计算式生成特定规律的列表 [x*x for x 阅读全文

posted @ 2017-05-13 00:00 vonkimi 阅读(139) 评论(0) 推荐(0) 编辑

2017年5月9日

切片与迭代

摘要: 1、切片就是按特定规律取列表或者元组中的某些值 2、tuple和字符串都可以切片,同样也用[] 字符串[::-1]为将字符串取倒序。 3、迭代的用法:for a in A,A是一个list或者tuple dict的迭代要注意到 for a in dict只是迭代到dict的key,如果要迭代dict 阅读全文

posted @ 2017-05-09 00:06 vonkimi 阅读(259) 评论(0) 推荐(0) 编辑

2017年5月7日

递归函数

摘要: 1、递归函数样例: Python默认最多支持1000层递归,可以通过配置最大递归次数来修改,如下: import syssys.setrecursionlimit(1500) # set the maximum depth as 1500 2、上述递归调用栈溢出本可以用尾递归进行优化,但是Pytho 阅读全文

posted @ 2017-05-07 17:38 vonkimi 阅读(99) 评论(0) 推荐(0) 编辑

函数2

摘要: 1、函数传入list或者tuple,可以一次传入多个元素,由于list和tuple的组成元素可以不同,比如整数和字符串混合组成list或者tuple,因此可以达到输入可变参数的目的 2、另一种可变参数的实现方式,函数可以支持形参个数可变,支持0个参数 如例子中所示在形参numbers前加*,调用时使 阅读全文

posted @ 2017-05-07 15:53 vonkimi 阅读(99) 评论(0) 推荐(0) 编辑

导航