python基础3之函数高级特性

###############################高级特性


1.迭代

 可以通过 for 循环来遍历这个 list 或 tuple,这种遍历我们称为迭代(Iteration)
 只要是可迭代对象,无论有无下标,都可以迭代,比如 dict就可以迭代:

python基础3之函数高级特性

      a)判断一个对象是否可迭代

    方法是通过 collections 模块的 Iterable 类型判断

python基础3之函数高级特性

        b)实现下标循环

   python内置的枚举方法enumerate,把一个 list 变成索引­元素对

python基础3之函数高级特性

       c)for 循环里,同时引用了两个变量,在 Python 里是很常见的;迭代显示[(1,2),(2,3),(3,4)]

python基础3之函数高级特性


2.列表生成式

            a)列表生成式是Python 内置的非常简单却强大的可以用来创建 list的生成式

            例:生成[1x1, 2x2, 3x3, ..., 7x7]

python基础3之函数高级特性           

           b)列表生成式嵌套if语句和for语句

           例:生成20以内所有偶数的平方

                   生成‘ABC’与‘123’的全排列

python基础3之函数高级特性

          例:生成字典的内容,格式为‘key=value’,返回其列表格式

                  将list中所有字符串变为小写字母

python基础3之函数高级特性


3.生成器

        a)创建生成器

              只需将列表生成式的[]改为()

             读取生成器用.next()方法,或for循环

python基础3之函数高级特性

python基础3之函数高级特性

              b)用生成器实现斐波拉契数列:除第一个和第二个数外,任意一个数都可由前俩个数相加得到:1,1,2,3,5,8,13,21,。。。

python基础3之函数高级特性