python课程第二节《初识bug》

当人被催眠时,你可以让他去做任何事。

当你学会编程,你可以让计算机做任何事。

温故知新

上节课我们写了第一行代码。

我们再来用print多打几行代码:

Run一下,你会得到很多很多包子:

语法错误

但是

不会每次运行都会如此顺利,有时你可能遇到这种情况:

出现一个小红点,里面有白色的叉叉。

他就是出来告诉你,这个地方行不通。

这时你可以检查这一行代码,看看哪里错了,或者你直接忽略他运行也同样会看到报错,描述的更详细。如下:

五颜六色的看不懂?

没关系。

我们只看最后一行。

英文不认识?

没关系

我们百度翻译一下。

【SyntaxError: 】是说有语法错误

【invalid syntax】的意思是无效的语法

语法错了!

我们回头来看看这行出错的代码,不难发现,少了()。

那就是说print()是一个规定好的语法。

我们把括号加上后,这行代码就没有错误提示了。

修改后,

在下一行代码前方,出现了另一种提示:

一个黄色的三角形,里边有一个感叹号。

这又是什么呢?

不知道没关系,我们先Run一下,肯定会有详细的解释。

现在得到了一个更长的英文。还是来看最后一行:

【SyntaxError: 】我们刚才已经学习过了,是说有语法错误。

那后面这句什么意思,赶快百度查一查:

非常顺利,竟然在第一个搜索结果中就发现了贴切的解释。

现在根据他的提示,回来把这行代码的引号补充完整。

以上这两处错误都属于语法错误,在运行前就会有提示。

运行错误

下面我们再来看看另一种错误:

这三行代码看上去没什么问题,很整节。

我们来Run一下:

看它的提示,和上面的区别挺大的

【TypeError:】这不是在说语法,

你可以百度一下,它是说类型错误。

啥是类型?

再往后看

【must be str, not int】必须是字符串,不能是整型。

字符串?整型?这又都是些啥。

简单理解,字符串就是在说字符例如"Bye for now!"这些英文。

而整型就是再说整数5。

(后面的课程我们会具体去讲各种数据类型)

现在我们能理解,它的意思是说,不能用5这个数字,换成字符就可以了。

那我们可以给5加双引号。让数字5变成字符串“5”。

在Run一次,发现没有错误了。

类型错误不是语法错误,而是属于运行错误,这类错误在运行程序前无法检测出来。只有你运行程序时才会发生。

动动手

本节课的最后,让我们一起来做两个小练习:

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180815G1K1YV00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券