已关闭。此问题需要更多focused。它目前不接受回答。
**希望改进此问题?**更新问题,使其仅针对editing this post的一个问题。
两年前关闭。
Improve this question的
我在阅读“think python”这本书,我读了第6.9章,其中谈到了调试。
将一个大的程序分解成更小的函数会为调试创建自然的检查点。如果一个函数不起作用,有三种可能性需要考虑:
函数获取的参数有问题;前提条件被违反。功能有问题;违反了后置条件。返回值或其使用方式有问题。
我明白它的意思,但我试图举例说明,以便我能更好地理解,但我不能。谁能给我举个简单的例子,让我更好地理解它?
1条答案
按热度按时间tpxzln5u1#
我不太熟悉这个术语,但我想我能理解他的意思。
让我们以一个小函数为例:
字符串
此函数首先将
num1
除以num2
,然后检查结果是否为num2
(即num2^2 = num1),并返回is_square
。当然,检查它是否是正方形不是最有效的方法,但它适合我们的目的。函数的参数有什么问题?我在代码中假设
num2
是一个数字(而不是字符串),并且它不为零。“参数有问题”意味着有人用字符串或零或任何其他无效的内容调用了函数。这是个错误。其次,还有函数内的误差:请注意,我犯了一个错误(故意的),
is_square
应该初始化为False。这是一个函数错误的示例。最后一种错误,也就是返回值的错误,是如果你返回了一个错误的值,比如返回
num1
而不是is_square
,返回not is_square
(相反)等等。