Discuss / Python / “Home”work

“Home”work

Topic source

def fact(n):

    '''

    Calculate 1*2*...*n

    >>> fact(1)

    1

    >>> fact(10)

    3,628,800

    >>> fact(-1)

    Traceback (most recent call last):

        ...

    ValueError: invalid value '-1'

    '''

    if n < 1:

        raise ValueError()

    if n == 1:

        return 1

    return n * fact(n - 1)

if __name__ == '__main__':

    import doctest

    doctest.testmod()


  • 1

Reply