<分区>
我对何时在我的 python 函数中使用断言测试感到困惑。如果我指定关于函数输入参数的假设,我应该假设正确的输入被提供给函数,还是我应该使用断言来检查规范中列举的输入参数的条件?
<分区>
我对何时在我的 python 函数中使用断言测试感到困惑。如果我指定关于函数输入参数的假设,我应该假设正确的输入被提供给函数,还是我应该使用断言来检查规范中列举的输入参数的条件?
最佳答案
如果您正在编写“公共(public)”函数,我相信 pythonic 方法是检查参数(使用 if
,而不是 assert
),并且,如果它们'如果无效,则使用类型和信息/消息引发异常,旨在提供尽可能多的信息。
如果您正在编写供内部使用的函数,那么使用 assert
来检查参数对我来说似乎是个好主意。
关于python - 前提断言测试是否取代了功能规范中的假设,反之亦然?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31410922/