首页 > 编程语言 > 详细

Python学习系列之bug(二十二)

时间:2021-02-28 00:27:40      阅读:25      评论:0      收藏:0      [点我收藏+]

Bug的由来及分类

一、Bug的常见类型

1. 粗心导致的语法错误SyntaxError

(1) 数据类型错误

示例代码:

age=input(‘请输入你的年龄:‘)
if age>=18:
    print(‘成年人....‘)

  执行结果:执行报TypeError: ‘>‘ not supported between instances of ‘str‘ and ‘int‘,提示类型错误

技术分享图片

  说明:age=input()得到的是string类型,18的类型是int类型,两者无法比较,所以会报TypeError,此时就需要将age转换成int类型,然后再和18比较

正确代码如下:

age=input(‘请输入你的年龄:‘)
print(type(age))
if int(age)>=18:
    print(‘成年人....‘)

  执行结果:

技术分享图片

 

2. 常见语法错误

#语法错误
while i<10:
    print(i)

  说明:代码中有2个错误,一是没有定义 i 的值,应该要给 i 定义一个初始值,二是pint函数后面的括号是中文括号,应该要改成英文括号,于是改成:

i=0
while i<10:
    print(i)

  执行以上代码会发现进入了死循环,i一直是0,会一直执行while函数一直打印0,应该要设置一个函数退出条件,在最后加上 i+=1

i=0
while i<10:
    print(i)
    i+=1

  执行结果如下:

技术分享图片

 

 (3)粗心导致的语法错误,将 == 写成 = 

技术分享图片

  

Bug的常见错误

  错误自查宝典:

  1.漏了末尾的冒号,如if语句,循环语句,else子句等

  2.缩进错误,该缩进的没缩进,不该缩进的瞎缩进

  3.把英文符号写成中文符号,比如说:引号,冒号,括号

  4.字符串拼接的时候,把字符串和数字拼在一起

  5.没有定义变量,比如说while 的循环条件的变量

  6.“==”比较运算符和“=”赋值运算符的混用

 

Python学习系列之bug(二十二)

原文:https://www.cnblogs.com/wx170119/p/14456919.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!