Discuss / Python / 练习

练习

Topic source

浅言87780

#1 Created at ... [Delete] [Delete and Lock User]

def fact(n):

    '''

    Calculate 1*2*...*n

>>> fact(1)

    1

>>> fact(10)

    3628800

>>> fact(-1)

    Traceback (most recent call last):

    File "<stdin>", line 1, in <module>

    File "<stdin>", line 3, in fact

    ValueError

    '''

    if n<1:

        raise ValueError()

    if n==1:

        return 1

    return n*fact(n-1)

if __name__=='__main__':

    import doctest

    doctest.testmod()


  • 1

Reply