Shaun wrote: > Thanks for your replies, obviously this isn't a simple thing to do so > I'll take a different tack. > > The exact problem I am trying to solve here is to avoid the > ZeroDivisionError in division. > I have c++ code which delegates to python to calculate expressions on > table cells. The values of the table cell are arbitary numbers and the > expressions to be calculated are fairly simple python arithmetic and > math functions. > > The problem being that some users want an expression like '(100/x)+ 3' > where x=0 to return 3. So that dividing a number by zero results in 0.
You have silly users. There's only one place I can think of where division of a finite, nonzero number by zero can sensibly result in zero (underdetermined least squares via SVD). I'd be curious as to why they want that behavior. > Apart from parsing the expression string myself and checking for divide > by zero I can't find another way to solve the problem. It might be easier to parse the expression and wrap all of the numbers by a subclass of float that does division like you want. -- Robert Kern [EMAIL PROTECTED] "In the fields of hell where the grass grows high Are the graves of dreams allowed to die." -- Richard Harter -- http://mail.python.org/mailman/listinfo/python-list