
-----Original Message----- From: python-dev-bounces+python=rcn.com@python.org [mailto:python-dev- bounces+python=rcn.com@python.org] On Behalf Of Phillip J. Eby Sent: Tuesday, May 17, 2005 6:06 PM To: Michael Chermside; gvanrossum@gmail.com Cc: python-dev@python.org Subject: Re: [Python-Dev] Example for PEP 343
At 02:42 PM 5/17/2005 -0700, Michael Chermside wrote:
# ===== SAMPLE #1: increasing precision during a sub-calculation =====
import decimal
@do_template def with_extra_precision(places=2): "Performs nested computation with extra digits of precision." decimal.getcontext().prec += 2 yield None decimal.getcontext().prec -= 2
Won't this do the wrong thing if something within the block alters the precision?
Right. It should save, alter, and then restore: oldprec = decimal.getcontext().prec decimal.getcontext().prec += 2 yield None decimal.getcontext().prec = oldprec Raymond Hettinger