抄的
def fact(n): ''' Calculate 1*2*...*n >>> fact(1) 1 >>> fact(10) 3628800 >>> fact(-1) Traceback (most recent call last): ... ValueError ''' if n < 1: raise ValueError() if n == 1: return 1 return n * fact(n - 1) if __name__ == '__main__': import doctest doctest.testmod()
我是真看不懂这节课的例子(也就是上节课的例子)
doctest就是相当于把测试代码在命令行里一行行敲进去运行,然后看看结果和你预设的是不是一样,这个fact其实就是个阶乘,所以fact(10)那里要写一个10!的结果,fact(-1)那里,看下面的代码,参数小于1抛出ValueError,所以你应该按照异常栈的格式写一个抛出ValueError的结果
Sign in to make a reply
做回自己ZXH
抄的