加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 创业 > C语言 > 正文

python 生成器和协程

发布时间:2020-12-15 00:32:22 所属栏目:C语言 来源:网络整理
导读:#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()
#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)

# 生成器的执行过程
gen = test_yield()
for k in gen:
    print 'k: %s' % k
print '--- end'</code></pre>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读