摘要: 什么是列表推导? 列表推导是一个将一个列表(实际上是任意可迭代对象)转换成另一个列表的工具。在转换时,每个元素都可以按照某个条件被包含在新的列表中,并根据需要做出一些变换。 如果你熟悉函数式编程,你可以把列表推导想成是一个filter后面跟了一个map的语法糖 1 2 >>> doubled_odd 阅读全文
posted @ 2017-07-27 22:34 byrony 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 迭代器 迭代器是一种支持next()操作的对象。它包含一组元素,当执行next()操作时,返回其中一个元素;当所有元素都被返回后,生成一个StopIteration异常。 >>>a=[1,2,3] >>>ia=iter(a) >>>next(ia) 1 >>>next(ia) 2 >>>next(i 阅读全文
posted @ 2017-07-27 22:28 byrony 阅读(70) 评论(0) 推荐(0) 编辑
摘要: 闭包(closure)是函数式编程的重要的语法结构。闭包也是一种组织代码的结构,它同样提高了代码的可重复使用性。 如果在一个内嵌函数里,对在外部函数内(但不是在全局作用域)的变量进行引用,那么内嵌函数就被认为是闭包(closure)。 定义在外部函数内但由内部函数引用或者使用的变量称为自由变量。 总 阅读全文
posted @ 2017-07-27 22:24 byrony 阅读(139) 评论(0) 推荐(0) 编辑