3 ms·
Full details: http://www.python.org/dev/peps/pep-0380/ http://www.python.org/dev/peps/pep-0380/
by motter 15y ago
Full details: http://www.python.org/dev/peps/pep-0380/ http://www.python.org/dev/peps/pep-0380/
- sp332 15y agoTalk about syntactic sugar :) RESULT = yield from EXPR is semantically equivalent to _i = iter(EXPR) try: _y = next(_i) except StopIteration as _e: _r = _e.value else: while 1: try: _s = yield _y except GeneratorExit as _e: try: _m = _i.close except AttributeError: pass else: _m() raise _e except BaseException as _e: _x = sys.exc_info() try: _m = _i.throw except AttributeError: raise _e else: try: _y = _m(*_x) except StopIteration as _e: _r = _e.value break else: try: if _s is None: _y = next(_i) else: _y = _i.send(_s) except StopIteration as _e: _r = _e.value break RESULT = _r