<pre><code>def h():
print 'Wen Chuan',
m = yield 5 # Fighting!
print m
d = yield 12
print 'We are together!'
c = h()
m = c.next() #m gets the value of yield 5
d = c.send('Fighting!') #d gets the value of yield 12
print 'We will never forget the date', m, '.', d
</code></pre>
<p>请检查以上代码。
运行结果如下:</p>
<pre><code>>>> ================================ RESTART ================================
>>>
Wen Chuan Fighting!
We will never forget the date 5 . 12
</code></pre>
<p>根据我的理解,第一个收益率返回值改为“<code>Fighting</code>!”已经有了,但是为什么以后<code>print m</code>它仍然显示值5?你知道吗</p>