听说PY3.3将对yield from支持,原生的coroutine

70 views
Skip to first unread message

sj l

unread,
Jun 25, 2011, 11:02:19 AM6/25/11
to pyth...@googlegroups.com
py3.3似乎将对yield from进行支持,yield from来自PEP 380。以前generator的yield只能返回到它的直接调用者,这使generator很难作为轻线程来使用,有了yield from后,不需要对底层进行改变(如greenlet),也能实现轻量级线程了;大家喷下水:)

这是python原生的coroutine呀,不是那个鸡肋的yield了,这里有例子

http://www.cosc.canterbury.ac.nz/greg.ewing/python/yield-from/yf_current/Examples/Scheduler/

victor lee

unread,
Jun 26, 2011, 3:17:54 AM6/26/11
to pyth...@googlegroups.com
python 3.3 的 beta那里可以得到呢?

2011/6/25 sj l <shuxi...@gmail.com>
py3.3似乎将对yield from进行支持,yield from来自PEP 380。以前generator的yield只能返回到它的直接调用者,这使generator很难作为轻线程来使用,有了yield from后,不需要对底层进行改变(如greenlet),也能实现轻量级线程了;大家喷下水:)

这是python原生的coroutine呀,不是那个鸡肋的yield了,这里有例子

http://www.cosc.canterbury.ac.nz/greg.ewing/python/yield-from/yf_current/Examples/Scheduler/

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)
发言: pyth...@googlegroups.com
退订: python-cn+...@googlegroups.com (向此发空信即退!)
详情: http://code.google.com/p/cpyug/wiki/PythonCn
严正: 理解列表! 智慧提问! http://wiki.woodpecker.org.cn/moin/AskForHelp
强烈: 建议使用技巧: 如何有效地报告Bug
http://www.chiark.greenend.org.uk/%7Esgtatham/bugs-cn.html

依云

unread,
Jun 26, 2011, 3:23:09 AM6/26/11
to pyth...@googlegroups.com
On Sun, Jun 26, 2011 at 03:17:54PM +0800, victor lee wrote:
> python 3.3 的 beta那里可以得到呢?
>
这里? http://hg.python.org/cpython

--
Best regards,
lilydjwg

Linux Vim Python 我的博客
http://bit.ly/lilydjwg or http://goo.gl/y4Gsy

victor lee

unread,
Jun 26, 2011, 3:32:49 AM6/26/11
to pyth...@googlegroups.com
没有啊?

2011/6/26 依云 <lily...@gmail.com>

victor lee

unread,
Jun 26, 2011, 3:40:42 AM6/26/11
to pyth...@googlegroups.com
找到了。branch 是 default?!


2011/6/26 victor lee <victor...@gmail.com>

victor lee

unread,
Jun 26, 2011, 4:13:41 AM6/26/11
to pyth...@googlegroups.com
TAT python3.3a0不支持yield from

2011/6/26 victor lee <victor...@gmail.com>

shhgs

unread,
Jun 26, 2011, 9:58:24 PM6/26/11
to pyth...@googlegroups.com
这个PEP很重要的。搞并行的同学都应该看看

感叹一下,从2.2的generator开始,到3.3才最后完成coroutine

On Sun, Jun 26, 2011 at 03:17:54PM +0800, victor lee wrote:

> python 3.3 的 beta那里可以得到呢?
>
> 2011/6/25 sj l <shuxi...@gmail.com>
>

> > py3.3似乎将对yield from进行支持,yield from来自PEP 380<http://www.python.org/dev/peps/pep-0380/>。以前generator的yield只能返回到它的直接调用者,这使generator很难作为轻线程来使用,有了yield

heww0205

unread,
Jun 27, 2011, 1:16:31 AM6/27/11
to pyth...@googlegroups.com
比较关心greenlet会何去何从,还有gevent是继续采用greenlet还是采用原生的。

--

sj l

unread,
Jun 27, 2011, 2:40:34 AM6/27/11
to pyth...@googlegroups.com
好像能找到的最早介绍generator的中文资料是shhgs大虾的文章

2011/6/27 heww0205 <heww...@gmail.com>

shhgs

unread,
Jun 27, 2011, 8:40:41 AM6/27/11
to pyth...@googlegroups.com
这个玩意出来,对twisted可以说是釜底抽薪。

viders

unread,
Jan 15, 2012, 9:43:15 PM1/15/12
to pyth...@googlegroups.com
今天从Guido的Google+上面看到PEP 380已经完成了,


PEP 380 ("yield from") is now Final


sj l

unread,
Jan 15, 2012, 10:05:57 PM1/15/12
to pyth...@googlegroups.com
lambda也能支持~
print("\n".join(list((lambda:(yield from ("Cheers,", "Nick")))())))
2012/1/16 viders <piv...@gmail.com>
今天从Guido的Google+上面看到PEP 380已经完成了,


PEP 380 ("yield from") is now Final

--
来自: python-cn`CPyUG`华蟒用户组(中文Python技术邮件列表)

Leo Jay

unread,
Jan 15, 2012, 10:40:40 PM1/15/12
to pyth...@googlegroups.com
2012/1/16 sj l <shuxi...@gmail.com>:

> lambda也能支持~
>
> print("\n".join(list((lambda:(yield from ("Cheers,", "Nick")))())))
>

oh, shit

--
Best Regards,
Leo Jay

无知的TonySeek

unread,
Jan 29, 2012, 10:45:37 AM1/29/12
to pyth...@googlegroups.com
激动的想流泪了 ……
Reply all
Reply to author
Forward
0 new messages