python基础3之函数高级特性
###############################高级特性
1.迭代
可以通过 for 循环来遍历这个 list 或 tuple,这种遍历我们称为迭代(Iteration)
只要是可迭代对象,无论有无下标,都可以迭代,比如 dict就可以迭代:
a)判断一个对象是否可迭代
方法是通过 collections 模块的 Iterable 类型判断
b)实现下标循环
python内置的枚举方法enumerate,把一个 list 变成索引元素对
c)for 循环里,同时引用了两个变量,在 Python 里是很常见的;迭代显示[(1,2),(2,3),(3,4)]
2.列表生成式
a)列表生成式是Python 内置的非常简单却强大的可以用来创建 list的生成式
例:生成[1x1, 2x2, 3x3, ..., 7x7]
b)列表生成式嵌套if语句和for语句
例:生成20以内所有偶数的平方
生成‘ABC’与‘123’的全排列
例:生成字典的内容,格式为‘key=value’,返回其列表格式
将list中所有字符串变为小写字母
3.生成器
a)创建生成器
只需将列表生成式的[]改为()
读取生成器用.next()方法,或for循环
b)用生成器实现斐波拉契数列:除第一个和第二个数外,任意一个数都可由前俩个数相加得到:1,1,2,3,5,8,13,21,。。。