摘要: 函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数! Python对函数式编程提供部分支持。由于Python允许使用变量,因此,Python不是纯函数式编程语言。 变量可以指向函数 成功!说明变量f现在已经指向了abs函数本身。直接调用abs()函数和调用变量f()完 阅读全文
posted @ 2018-05-07 17:08 牛郎 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 这些可以直接作用于for循环的对象统称为可迭代对象:Iterable。 可以使用isinstance()判断一个对象是否是Iterable对象: 可以被next()函数调用并不断返回下一个值的对象称为迭代器:Iterator。 可以使用isinstance()判断一个对象是否是Iterator对象: 阅读全文
posted @ 2018-05-07 16:55 牛郎 阅读(109) 评论(0) 推荐(0) 编辑
摘要: 通过列表生成式,我们可以直接创建一个列表。但是,受到内存限制,列表容量肯定是有限的。而且,创建一个包含100万个元素的列表,不仅占用很大的存储空间,如果我们仅仅需要访问前面几个元素,那后面绝大多数元素占用的空间都白白浪费了。 所以,如果列表元素可以按照某种算法推算出来,那我们是否可以在循环的过程中不 阅读全文
posted @ 2018-05-07 16:49 牛郎 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。 举个例子,要生成list [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]可以用list(range(1, 11)): 生成[1x1, 2x2, 3x3, ..., 阅读全文
posted @ 2018-05-07 14:57 牛郎 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration)。 比如dict就可以迭代: 因为dict的存储不是按照list的方式顺序排列,所以,迭代出的结果顺序很可能不一样。 默认情况下,dict迭代的是key。如果要迭代val 阅读全文
posted @ 2018-05-07 14:19 牛郎 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 列表L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] 取前3个元素 也可以从索引1开始,取出2个元素出来: 类似的,既然Python支持L[-1]取倒数第一个元素,那么它同样支持倒数切片,试试: 切片操作十分有用。我们先创建一个0-99的数列: 可以通 阅读全文
posted @ 2018-05-07 14:13 牛郎 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 绝对值 max()可以接收任意多个参数,并返回最大的那个: 数据类型转换 定义函数: 定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。 如定义一个绝对值函数: def my_abs(x): if x >= 0: 阅读全文
posted @ 2018-05-07 14:02 牛郎 阅读(234) 评论(0) 推荐(0) 编辑