day14.生成器进阶

生成器中取值的三种方法

方法1:next()

方法2:for 循环

方法3:数据类型的强制转换

def func():
    for i in range(20):
        yield '赛车*{}'.format(i)

ret = func()
print(ret.__next__())

for i in ret:
    print(i)

l1 = list(ret)
print(l1)

send() 方法

send 获取下一个值得时候给上一个yield位置传递一个数据

def func():
    print(1)
    con = yield 111
    print('yield1 的返回值测试:',con)

    print(2)
    con2 = yield 222

g = func()
ret1 = g.__next__()
print(ret1)

ret2 = g.send('hello,world')
print(ret2)
1 111 yield1 的返回值测试: hello,world 2 222

猜你喜欢

转载自www.cnblogs.com/jiuyachun/p/10456507.html