前提条件断言测试是否取代了功能规范中的假设,反之亦然



我很困惑,什么时候在我的python函数中准确地使用断言测试。如果我指定了关于函数输入参数的假设,我应该假设向函数提供了正确的输入,还是应该使用断言来检查规范中枚举的输入参数的条件?

如果你正在编写"public"函数,我相信python的方法是检查参数(使用if,而不是assert),如果它们无效,则抛出异常,并设计类型和信息/消息以提供尽可能多的信息。

如果您正在编写用于内部使用的函数,那么使用assert来检查参数对我来说似乎是一个好主意。

最新更新