Python 协程的无限递归的问题,python协程递归,hi, 最近看了关于Py
Python 协程的无限递归的问题,python协程递归,hi, 最近看了关于Py
hi, 最近看了关于Python协程的相关文章协程的简单理解,说协程可以无限递归,于是想写一个协程示例练练,于是:
import timedef ping(): print 'ping 0' count = 1 try: pi,po = yield s print 'ping ' + str(count) count += 1 time.sleep(1) po.send([po, pi]) except StopIteration: passdef pong(): print 'pong 0' count = 1 try: po, pi = yield s print 'pong ' + str(count) count += 1 time.sleep(1) pi.send([pi,po]) except StopIteration: passs = ping()r = pong()s.next()r.next()s.send([s,r])
运行结果是:
ping 0pong 0ping 1pong 1Traceback (most recent call last): File "D:\test\coroutine.py", line 34, in <module> s.send([s,r]) File "D:\test\coroutine.py", line 12, in ping po.send([po, pi]) File "D:\test\coroutine.py", line 25, in pong pi.send([pi,po])ValueError: generator already executing
那篇文章使用了stackless,我想实现一个原始的方法。但是出错,不知道要实现无限递归的话,应该怎么写嘞?
编橙之家文章,
相关内容
- Python 二维数组赋值,python二维数组赋值,grid = [[0,]
- 自动化重构方案与实践,自动化重构方案,如何进行代码
- python+webdriver想登录淘宝,输入用户名密码点登录后,提
- python把HTML存入Mysql,python存入mysql,用pyspider爬虫爬
- 知乎的qq登录怎么用python和webdriver定位到“账号密码登
- python爬虫模拟登陆,post后如何返回retUrl,pythonreturl,想
- python manage.py runserver 127.0.0.1:80 时出错,manage.pyrunserve
- 如何利用pycharm调试Django?能打印出变量的数据结构吗,
- django admin site 如何显示auth app 下所有model?,djangoauth,d
- python中print语句问题,pythonprint语句,for row in r
评论关闭