python 生成器和协程

前端之家收集整理的这篇文章主要介绍了python 生成器和协程前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
#coding: utf-8

import time

def consumer():
"""消费者"""
print 111
r = ''
while True:
n = yield r
print 333
if not n:
return
print('[CONSUMER] Consuming %s...' % n)
time.sleep(1)
r = '200 OK'

def produce(c):
"""生产者"""
print 000
c.next()
print 222
n = 0
while n < 5:
n = n + 1
print('[PRODUCER] Producing %s...' % n)
r = c.send(n)
print('[PRODUCER] Consumer return: %s' % r)
c.close()

def test_yield():
"""生成器"""
print '---start'
for i in [1,2,3]:
print 'i: %s' % i
x = yield i
print 'x: %s' % x
print '======='

if name=='main':

协程的执行过程

#c = consumer()
#produce(c)

# <a href="/tag/shengcheng/" target="_blank" class="keywords">生成</a>器的执行过程
gen = test_yield()
for k in gen:
    print 'k: %s' % k
print '--- end'</code></pre>

猜你在找的程序笔记相关文章