Iteration for Factorials
mensanator at aol.com
mensanator at aol.com
Tue Oct 23 13:33:14 EDT 2007
On Oct 23, 5:55 am, Marco Mariani <ma... at sferacarta.com> wrote:
> Tim Chase wrote:
> >>>> fact = lambda i: i > 1 and reduce(mul, xrange(1, i+1)) or not
> > i and 1 or None
>
> > Stunts like this would get a person fired around here if they
> > were found in production code :)
>
> eheh, indeed.
>
> def fact(n):
> try:
> return eval('*'.join(str(x) for x in range(1,n+1)))
> except:
> return 1
Needs work.
IDLE 1.2
>>> def fact(n):
try:
return eval('*'.join(str(x) for x in range(1,n+1)))
except:
return 1
>>> fact(3)
6
>>> fact(2)
2
>>> fact(1)
1
>>> fact(0)
1
>>> fact(-1)
1
>>> fact(-2)
1
More information about the Python-list
mailing list