,作为菜鸟的我有点尴尬。简单的介绍就是:assertexpression让我们用程序来测试这个表达式,如果表达式等于False,那么抛出一个AssertionError。也就是说,它在逻辑上等同于:ifnotexpression:raiseAssertionError简单地看一下这些例子:>>>assertTrue>>>assertFalseTraceback(mostrecentcalllast):File"",line1,在assertFalseAssertionError>>>assert1==1>>>assert1==0Traceback(最近一次调用最后):文件“”,第1行,在assert1==0AssertionError>>>assert[1,2]#值得注意的是非空列表,虽然没什么,哈哈>>>assertnot[1,2]Traceback(mostrecentcalllast):File"”,line1,inassertnot[1,2]AssertionError在assert断言语句中添加异常参数assert的异常参数其实就是在断言表达式后面添加字符串信息,即一般用来解释断言。格式如下:assertexpression[,arguments]assertexpression[,parameters]例如,请参阅以下代码了解一些重要细节。老手可以尝试运行如下代码段:>>>assertNone,'如果是布尔表达式公式则为None,相当于False'>>>assert[],'如果用空列表作为布尔表达式,等价于False'>>>assert(),'如果用空元组作为布尔表达式,则等价于False'>>>assert{},'如果用空字典作为布尔表达式,等价于False'>>>assertset(),'如果一个空集合作为一个布尔表达式,它等价于False'>>>assert'','如果一个空字符串作为一个布尔表达式表达式,就相当于False'当然还有numpy的妙用>>>a=np.array([1,2])>>>assertaTraceback(mostrecentcalllast):File"",第1行,在中断言aaValueError:具有多个元素的数组的真值不明确。使用a.any()或a.all()是的,你没看错,有numpy的地方,就有使用a.any()或a.all()...最后再试试这两个:>>>assertnp.array([])>>>assertnp.array([[],[]])可以的,只要是空的,不管多少维,都等价于False