Discuss / Python / 更清楚显示过程

更清楚显示过程

Topic source

weaming

#1 Created at ... [Delete] [Delete and Lock User]

代码

# -*- coding: utf-8 -*-
import time
def consumer():
    r = 'xxx'
    print 'r:', r
    while True:
        n = yield r
        print 'n:', n
        print('[C] %s...' % n)
        r = 'finish.'
        time.sleep(1)

def produce(c):
    print 'c:', c
    rv = c.send(None)
    print 'rv:', rv
    n = 0
    while n < 5:
        n = n + 1
        print('[P] Producing %s...' % n)
        r = c.send(n)
        print('[P] Consumer return: %s' % r)
    c.close()

c = consumer()
produce(c)

结果

c: <generator object consumer at 0x02710940>
r: xxx
rv: xxx
[P] Producing 1...
n: 1
[C] 1...
[P] Consumer return: finish.
[P] Producing 2...
n: 2
[C] 2...
[P] Consumer return: finish.
[P] Producing 3...
n: 3
[C] 3...
[P] Consumer return: finish.
[P] Producing 4...
n: 4
[C] 4...
[P] Consumer return: finish.
[P] Producing 5...
n: 5
[C] 5...
[P] Consumer return: finish.

  • 1

Reply