正在加载...

找错

程序顺顺当当跑完,一个报错也没有,结果照样可能是错的。想看出来,就把你怀疑的那个数用 print 写到屏幕上。一间厅里有十二个座位,九个已经有人坐了。空着的座位,应该就是剩下的那部分。

空座位,减反了

python
total = 12
taken = 9
free = taken - total
print(free)

第一个程序的屏幕上是 -3。它是整数,前面一个负号,没有小数点。print 把它写出来,程序也就结束了,None 不会写出来。可是 -3 当不了空座位的数量,它是九减十二得来的。free 这个名字让人以为是空座位,算式却把已经坐下的人的座位也减掉了。毛病在这一行里就看得出来,不用再找别的工具。

空座位,顺序对了

python
total = 12
taken = 9
free = total - taken
print(free)

第二个程序是另一个,单独运行。两个数还是那两个,只换了顺序,屏幕上是 3。十二减九,剩下三个座位。print 把 3 写出来,是整数,没有小数点。第二个程序改不了第一个:再运行第一个,屏幕上仍然是 -3。要改的是 free 里面的顺序,不是装新包,也不是建新文件夹。

第一个程序是倒着减的。print 只负责把结果写出来,它不装包,也不建文件夹。程序不会停住并报 TypeError,下一行也不会写出 None,屏幕上更没有 blue、9 或 12。出问题的,就是你在屏幕上看到的那个数。

屏幕上的数暴露了毛病

看到 -3,你就知道减的顺序反了;看到 3,你就知道顺序对了。下一页是为函数写说明。这一页只给出一个错的数,再把同样两个数换成有用的顺序。

🧠 测试您的知识

准备开始

测试您的知识

通过这个互动测验挑战自己,看看你对这个主题的理解程度如何

❓
5
问题
🎯
70%
及格要求
♾️
∞
时间
🔄
∞
尝试次数

📝 说明

  • 仔细阅读每个问题
  • 为每个问题选择最佳答案
  • 您可以随时重新参加测验
  • 您的进度将显示在顶部