当前位置: 首页 > wzjs >正文

全国各城市疫情高峰感染高峰进度天津的网络优化公司排名

全国各城市疫情高峰感染高峰进度,天津的网络优化公司排名,网站建设价目,伪春菜 wordpress本文章记录观看B站python教程学习笔记和实践感悟,视频链接:【花了2万多买的Python教程全套,现在分享给大家,入门到精通(Python全栈开发教程)】 https://www.bilibili.com/video/BV1wD4y1o7AS/?p6&share_sourcecopy_web&v…

本文章记录观看B站python教程学习笔记和实践感悟,视频链接:【花了2万多买的Python教程全套,现在分享给大家,入门到精通(Python全栈开发教程)】 https://www.bilibili.com/video/BV1wD4y1o7AS/?p=6&share_source=copy_web&vd_source=404581381724503685cb98601d6706fb

上节课学习本章内容,本章习题,以及章节实战演练——实战一车牌归属地,实战二统计指定字符出现的字数,实战三格式化输出商品信息,实战四使用正则表达式提取图片网址,本节课学习bug的由来和分类,python中的异常处理,raise关键字的使用,python中常见的异常类型,PyCharm的程序调试。

1.bug的由来和分类

bug指的是检测并排除程序或机器中的故障。下面是bug的分类:

首先是粗心导致的错误

 解决方案:注意冒号,注意缩进,注意符号的中英文,注意运算符不要弄混。

2.python中的异常处理

当代码逻辑没有错误,但是用户输入能出错。例如下面的代码:

num1=int(input('请输入一个整数'))
num2=int(input('请输入另一个整数'))
result=num1/num2
print('结果:',result)

当执行输入10和2的时候:

但是当输入10和0的时候就报错了

如果用户不小心输入一个非整数或者0就会报错了。那么像这种情况我们可以使用异常处理机制。

第一种结构:

首先使用try-except机制,基本格式为:

#ZeroDivisionError和ValueError和BaseException都是异常处理的常见情况,要根据具体情况替换
try:pass(这里填可能出现异常的代码)
except ZeroDivisionError:pass(这里填一旦出现异常要返回什么)
回到刚刚除数为0报错实例,为了不让它返回异常:
try:num1 = int(input('请输入一个整数'))num2 = int(input('请输入另一个整数'))result = num1 / num2print('结果:', result)
except ZeroDivisionError:print('除数为零')

除了不为零的情况其他也要考虑到,也就是使用多except情况

注意捕获异常是有顺序额的,从上到下的按照从子类到父类的顺序。因为在出现错误的时候,它会按照从上到下去一个个匹配,如果第一个except匹配不上就去匹配第二个except......语法结构如下:

#ZeroDivisionError和ValueError和BaseException都是异常处理的常见情况,要根据具体情况替换
try:pass(先写可能会抛出异常的代码)
except ZeroDivisionError: #这里写异常情况Apass(再写报错后执行的代码)
except ValueError: #这里写异常情况Bpass(报错后执行的代码)
except BaseException: #这里写异常情况Cpass(报错后执行的代码)

将除法那个例子改装,示例如下:

try:num1 = int(input('请输入一个整数'))num2 = int(input('请输入另一个整数'))result = num1 / num2print('结果:', result)
except ZeroDivisionError: #这里写异常情况Aprint('除数为零')
except ValueError: #这里写异常情况Bprint('不能将字符串转成整数')
except BaseException: #这里写异常情况Cprint('未知异常')

第二种结构:

先看try-else结构,语法格式如下:

try:pass
except A: #这里写异常情况Apass #当出现这种异常应该怎么处理
except B: #这里写异常情况Bpass #当出现这种异常应该怎么处理
else:pass #正常执行应该怎么处理

 实例与解释:

try:num1 = int(input('请输入一个整数'))num2 = int(input('请输入另一个整数'))result = num1 / num2#这个位置本来是放如果没有异常怎么处理
except ZeroDivisionError:print('除数不能是零')
except ValueError:  # 这里写异常情况Bprint('不能将字符串转成整数')
except BaseException: #这里写异常情况Cprint('未知异常')
else:print('结果:', result) #当出现这种异常应该怎么处理

 第二个结构就是比前一个结构多了一个finally,就是无论有没有异常都要输出这个结果,比喻一下


try:让我们一起包饺砸 #可能会出现异常的程序
except 不爱吃饺子:  #这里写异常情况Aprint('过年怎么能不吃饺子呢')
except 我压岁钱呢:  #这里写异常情况Bprint('爸妈先帮你收起来')
else:print('饺子馅就应该是鸡汁味的') #正常进行应该怎么处理
finally:print('大过年的') #正常异常都得输出这个

还是除数这个例子实例如下:

try:num1 = int(input('请输入一个整数'))num2 = int(input('请输入另一个整数'))result = num1 / num2#这个位置本来是放如果没有异常怎么处理
except ZeroDivisionError:print('除数不能是零')
except ValueError:  # 这里写异常情况Bprint('不能将字符串转成整数')
except BaseException: #这里写异常情况Cprint('未知异常')
else:print('结果:', result) #当出现这种异常应该怎么处理
finally:print('程序执行结束')

 

3.raise关键字的使用

实例以及解释如下:raise的描述信息只有在异常的时候才会抛出

try:gender=input('请输入你的性别:')if gender!='男' and gender!='女':raise Exception('性别只能是男或女') #raise后面是抛出异常对象的描述信息,如果没有异常就执行else了;如果有异常就不会执行else直接执行最后一行的描述信息的输出else: #如果没有异常print('您的性别为:',gender)
except Exception as e: #给Exception起一个别名叫eprint(e)

4.python中常见的异常类型

代码实例如下: 

#下面演示一下各种异常的实例
#注意在实际演示之前,想要看看每一种情况会报什么错,必须把其他的情况注释掉
#(1)ZeroDivisionError  适用于0做除数
print(10/0)#解决方案:使用try-except#(2)indexError  是索引出错的时候产生的异常,一般出现在列表取值的时候
lst=[10,30,50,90]
print(lst[4]) #索引下标从0开始只能到3#(3)keyError 字典取值的时候取得是字典不存在的索引
d={'name':'ysj','age':'20'}
print(d['gender'])#(4)NameError 使用一个没有声明的变量
print(hello)#(5)SyntaxError 语法错误
print('hello)#(6)ValueError  值传入异常
print(int('a'))#(7)AttributeError  属性或方法不存在的异常
i=10
print(i.name)#(8)TypeError  类型不合适
print('hello'+123)#(9)IndentationError  缩进有问题print('Hello')

5.PyCharm的程序调试 

断点一般设置在循环处,只需要将光标放在这里航的行标上,点击左键就会出现一个红色的圆点

三种方式进入程序调试窗口,可以点右上角的小虫,或者debug或者快捷键

 

 

最后根据调试结果修改代码,调试完成后再点一下小圆点取消调试断点。

本节完。 

http://www.dtcms.com/wzjs/275168.html

相关文章:

  • 重庆高端网站建设价格青岛seo服务哪家好
  • 网站icp备案 去哪360摄像头海澳門地区限制解除
  • 博兴网站建设免费网站建设模板
  • 网站建设一般用英文怎么说爱站网域名查询
  • 中国著名十大vi设计案例seo实战培训费用
  • 丰台公司做网站优化推广联盟
  • 上海seo培训中心哪个杭州seo好
  • 教育机构网站制作模板软件开发定制
  • 几十万做网站平台企业网站制作开发
  • 动态网站设计与制作百度地图人工电话
  • 公司做网站费会计科目seo工程师招聘
  • 武汉网络推广霸屏seo优化上海牛巨微
  • 找个人给我做电影网站中国百强县市榜单
  • 个人网站是请人做还是自己编写好苏州做网站哪家比较好
  • 如何制作网站平台产品推广计划怎么写
  • 做整个网站静态页面多少钱seo标签优化
  • 专业做股权众筹的网站网站服务器失去响应
  • 网站链接设计推广app最快的方法
  • 做视频网站视频文件都存放在哪关键词优化公司如何选择
  • 西宁做网站的有吗今日头条热榜
  • 日本的顶级域名是vue seo优化
  • 深圳响应式网页设计北京seo顾问服务公司
  • 宿迁盐城网站建设企业谷歌seo 优化
  • 个人作品展示网站如何宣传推广产品
  • 长沙房地产公司有哪些seo优化方法有哪些
  • wordpress数字分页seo专业实战培训
  • 深圳新恒基建设公司seo诊断的网络问题
  • 如何在网站上做网盘seo整体优化
  • 比较简单的进销存软件网站seo报价
  • 长沙知名网站推广莆田百度快照优化