python 生成器

# 生成器
# 在 Python 中,使用了 yield 的函数被称为生成器(generator)。
# 跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。
# 在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回 yield 的值, 并在下一次执行 next() 方法时从当前位置继续运行。
# 生成器本质:迭代器
# 生成器不能像普通的列表一样,通过下标或者切片的方式去取
# 生成器只能通过 循环 或者__next__()(2.x中用next())方法去取。
def test_demo():
    print("1111111111")
    yield ("A")
    # return "a"
    print("2222222222")
    yield ("b")
    print("333333333")
    yield ("c")
    print("4444444444")
    yield ("d")
#
# test_demo()
# print(test_demo())

print(next(test_demo()))
def long_(max):
    Long=[1]
    while True:
        yield(Long)
        if len(Long)>=max:
            break
        Long.append(0)
        Long=[Long[n-1]+Long[n] for  n in range(len(Long))]
for  i in long_(7):
    print(i)
#
ge=(i*i for i in range(10))
print(type(ge))
for n in ge:
    print(n)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值