On May 17, 2005, at 9:02 PM, Raymond Hettinger wrote: >>> What's the advantage of using two calls to getcontext() vs. saving >>> > the > >>> context in a local variable? >>> >> >> I also prefer saving the context in a local variable but that is just >> > a > >> micro-optimization. The presentation with multiple calls to >> getcontext() was kept just to match the style of the original -- the >> important change was the absolute save and restore versus the >> original >> relative adjust up and adjust down. >> > > One more thought: Rather than just saving the precision, it is likely > wiser, safer, and more general to just save and restore the whole > context and let the wrapped block only work with a copy. > > oldcontext = decimal.getcontext() > newcontext = oldcontext.copy() > newcontext.prec += 2 > yield None > decimal.setcontext(oldcontext) > > This approach defends against various kinds of unruly behavior by the > yield target. I think you're missing a decimal.setcontext(newcontext) before the yield.. -bob
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4