#案例:演示map函数的使用!
#案例1
# a=["1","2","3"]
# ret=list(map(int,a))
# print(ret)
#案例2
# def f(x):
# return x*2
#
# a=[1,3,5]
# ret=list(map(f,a))
# print(ret)
#案例3
#拉姆达表达式:匿名函数:格式:lambda 形参1,形参2: 表达式值
# ret=list(map(lambda x: x * 2, [1, 2, 3, 4, 5]))
# print(ret)
#案例4
# def f(x,y):
# return x+y
#
# a=[1,2,3]
# b=[4,5,6]
# ret=list(map(f,a,b))
# print(ret)
#案例5
##拉姆达表达式:匿名函数:格式:lambda 形参1,形参2: 表达式值
a=[1,2,3]
b=[4,5,6]
c=[7,8,9]
ret=map(lambda x,y,z: (x*y)*z,a,b,c)
it=iter(ret)#创建迭代器对象it
for x in it:
print(x)
========================================================
#案例:演示迭代器的使用、生成器函数的使用、生成器表达式的使用!
#案例1
a=[1,2,3,4,5]
#为列表a创建迭代器对象it
it=iter(a)
#遍历迭代器对象it
for x in it:#相当于x分别等于next(it)
print(x)
print("----------")
#案例02
# #生成器函数,返回值是:一个迭代器
# def fibonacci(n):
# a,b,c = 0,1,0
# while c<n:
# yield b # 生成器。#相当于return b,即每一次都把b的值保存到一个列表中,最后返回该列表!
# a,b = b,a+b
# c +=1
# #[1,1,2,3,xxxxx]
#
# #用生成器函数fibonacci来生成一个迭代器对象
# it=iter(fibonacci(10))
# for x in it:
# print(x)
#案例3
#生成器表达式
# gen = (x*2 for x in range(1, 4)) #[2,4,6]
# #迭代器对象
# it=iter(gen)
# for x in it:
# print(x)