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

静态网站怎么做留言板全国疫情防控最新数据

静态网站怎么做留言板,全国疫情防控最新数据,wordpress自制主题,丽水做企业网站的地方异常 在编程中,异常是指程序运行过程中发生的意外事件,这些事件通常中断了正常的指令流程。它们可能是由于错误的输入数据、资源不足、非法操作或其他未预料到的情况引起的。Python中,当遇到这类情况时,会抛出一个异常对象&#…

异常

在编程中,异常是指程序运行过程中发生的意外事件,这些事件通常中断了正常的指令流程。它们可能是由于错误的输入数据、资源不足、非法操作或其他未预料到的情况引起的。Python中,当遇到这类情况时,会抛出一个异常对象,如果这个异常没有被捕获处理,程序将会终止执行。

异常处理

异常处理是一种编程技术,用于捕捉程序运行过程中发生的异常,并采取适当措施来响应这些异常,而不是让程序直接崩溃。这包括捕获异常、分析异常类型以及根据异常类型决定如何恢复或优雅地结束程序。

Python提供了try、except、else和finally语句来实现异常处理机制:

  1. try: 尝试执行的代码块,可能抛出异常的地方。
  2. except: 捕获并处理特定类型的异常。可以有多个except子句来捕获不同类型的异常。
  3. else: 如果没有异常发生,则执行这里的代码块。
  4. finally: 不管是否发生异常,都会执行的代码块,通常用来清理资源。

处理示例

针对常见的一些异常做处理示例。

处理处 ZeroDivisionError 异常

在学习四则运算的时候,我们都知道除法运行中除数不能为0。
Python中同样也有四则运算,我们练习的时候自然会避免出现除数为0的情况。在实际编程过程中,我们很少会除以一个固定数值,大多数时候都是除以一个变量,而这个变量的值,往往是在程序运行中根据各种情况计算出来的,这个时候,我们就没办法保证除数不能为0了。那么真的遇到除数为0的情况,Python会如何应对呢?

在这里插入图片描述
程序执行出现错误,提示 ZeroDivisionError :division by zero。这个是很明显的提示,并且明确指出在模块第1行。
为了防止程序错误中止,我们可以通过异常处理是程序继续执行。

try:result = 10 / 0  # 这里会尝试执行除法运算
except ZeroDivisionError:# 捕获到ZeroDivisionError后,输出提示信息print("错误:不能除以零")
print("程序继续执行")

在这里插入图片描述

程序打印了错误的提示,然后正确的向下执行。

这就是异常处理的基础语法和使用,但是有时候程序出现异常不出现异常是两种处理方法,这个时候我们就需要用到else语句了。

div = 2
div *= 2
div += 3
div //= 3
div -= 1
try:result = 10 / div  # 这里会尝试执行除法运算
except ZeroDivisionError:# 捕获到ZeroDivisionError后,输出提示信息print("错误:不能除以零")
else:print("结果是:", result)
print("程序继续执行")

在这里插入图片描述
根据结果,我们发现程序走了else的分支,那么很明显,异常没有发生,输出结果也符合预期。

最后讲一下比较特殊的finally。这个语句下的分支,是不管异常发生不发生,都能够执行的语句。通常会用来关闭某些资源,比如上篇说的文件的资源,就会在finally代码块中调用close()方法关闭文件资源。

finally语句使用新的异常进行示例。

FileNotFoundError

在进行文件处理的时候,可能不小心填错了地址或者写错了文件格式。这个时候调用文件流的open方法就会出现异常。

file = open("example.txt")
content = file.read()
print(content)

在这里插入图片描述
一个很明显的文件不存在的提示。我们同样使用try…except进行异常处理

try:file = open("example.txt")content = file.read()
except FileNotFoundError:print("文件未找到")
else:print(content)

在这里插入图片描述
根据我们学习的文件流知识吗,我们在文件操作过程中,使用了open函数就一定要调用close函数关闭资源。那么流关闭的调用应该放在哪里呢?仔细想想,放在正常流程中,程序出现错误怎么办?放在异常处理中,那正常逻辑不是得也写一份?那么finally无疑是最好的选择了。
写在finally中有两个好处:

确保资源总是被释放:无论try块中的代码是否抛出异常,finally块都会执行。这意味着即使程序因为某些未预料到的错误提前退出,finally中的清理代码也会运行,从而确保打开的资源被正确关闭,防止资源泄露。
逻辑清晰:将资源清理工作放在finally块中,可以使得异常处理逻辑(except块)专注于处理异常本身,而资源管理则由finally统一负责,这样代码结构更加清晰,便于理解和维护。

file = open("example.txt")
try:content = file.read()print(content)
except FileNotFoundError:print("文件未找到")
finally:file.close()  # 确保文件被关闭

这样的话,资源最终都会关闭。

多个异常

实际编写代码时,代码通常会几行几十行,那么出现异常的种类也可能不止一种,那么怎么去处理多种异常呢?

try:num = int(input("请输入一个数字: "))result = 10 / num
except ValueError:print("输入的不是有效的数字")
except ZeroDivisionError:print("不能除以零")

像这样,按顺序使用except语句处理即可。

那么问题又来了,两个三个,甚至四个五个我都一行行去写没问题,十几个怎么办?异常处理比代码还长,谁看谁头痛。

python有处理所有异常的办法。

try:# 可能抛出任何类型的异常的代码...
except Exception as e:print(f"发生了异常: {e}")

使用Exception,这表示所有的异常都会被捕获住。

问题又又来了,我就想单独处理FileNotFoundError,其他异常再统一处理,行不行?

当然可以! 请看。

try:# 可能抛出多种类型的异常的代码file = open("nonexistent_file.txt")  # 示例:尝试打开一个不存在的文件content = file.read()print(content)
except FileNotFoundError:print("错误:指定的文件未找到。")
except Exception as e:print(f"发生了其他异常: {e}")  # 捕获除FileNotFoundError之外的所有异常
finally:# 关闭文件等清理操作,如果文件已成功打开的话if 'file' in locals() and not file.closed:file.close()

在python中,except语句存在多个同时使用时,按从上到下的顺序执行。按上面代码来解释就是:python发现你程序执行的时候出现异常,先检查是不是FileNotFoundError,是就在这个except中进行处理,不是的话再往下执行匹配下一个异常类。这样的话别说处理一个,处理十个都没问题。

结尾

python的异常处理就这些内容了,大家在实际使用的时候要灵活运用,根据不同的业务和场景灵活使用try…except…else…finally,来得到自己想要的结果。

作业

  1. 查询常见的一些异常。

  2. 自己编写代码处理这些异常,从单个,到多个,再到单个+所有的模式。


文章转载自:
http://dinncocentrosymmetric.knnc.cn
http://dinncopilus.knnc.cn
http://dinncosmokeproof.knnc.cn
http://dinncoexemplary.knnc.cn
http://dinncohaymarket.knnc.cn
http://dinncodescriptively.knnc.cn
http://dinncofeisty.knnc.cn
http://dinncosmug.knnc.cn
http://dinncolineate.knnc.cn
http://dinncoocdm.knnc.cn
http://dinncocherokee.knnc.cn
http://dinncoepicardial.knnc.cn
http://dinncoclock.knnc.cn
http://dinncounispiral.knnc.cn
http://dinncowhitley.knnc.cn
http://dinncodeerskin.knnc.cn
http://dinncononaligned.knnc.cn
http://dinncosubcrystalline.knnc.cn
http://dinncokabuki.knnc.cn
http://dinnconested.knnc.cn
http://dinncompe.knnc.cn
http://dinncojameson.knnc.cn
http://dinncopostpaid.knnc.cn
http://dinncofriskful.knnc.cn
http://dinncopneumobacillus.knnc.cn
http://dinncoyawny.knnc.cn
http://dinncowinesap.knnc.cn
http://dinncoelectrokinetic.knnc.cn
http://dinncospiciness.knnc.cn
http://dinncolowermost.knnc.cn
http://dinncoacrimonious.knnc.cn
http://dinncogonfalon.knnc.cn
http://dinncophytopathogene.knnc.cn
http://dinncoinvasive.knnc.cn
http://dinncobeneficial.knnc.cn
http://dinncobruno.knnc.cn
http://dinncoragnarok.knnc.cn
http://dinncogeneralcy.knnc.cn
http://dinncohymenoptera.knnc.cn
http://dinncofoin.knnc.cn
http://dinncoups.knnc.cn
http://dinncopansophism.knnc.cn
http://dinncocathexis.knnc.cn
http://dinncoakala.knnc.cn
http://dinncogooseberry.knnc.cn
http://dinncoinsolvable.knnc.cn
http://dinncoglucoprotein.knnc.cn
http://dinncoconciliar.knnc.cn
http://dinncodetinue.knnc.cn
http://dinncolabradorean.knnc.cn
http://dinncoyugawaralite.knnc.cn
http://dinncopiled.knnc.cn
http://dinncoretrocardiac.knnc.cn
http://dinncononage.knnc.cn
http://dinncopunctuational.knnc.cn
http://dinncosonance.knnc.cn
http://dinncoexcardination.knnc.cn
http://dinncomoro.knnc.cn
http://dinncofurfuraceous.knnc.cn
http://dinncocaespitose.knnc.cn
http://dinncocryoextractor.knnc.cn
http://dinncoequipage.knnc.cn
http://dinncobarghest.knnc.cn
http://dinncodisennoble.knnc.cn
http://dinncodibranchiate.knnc.cn
http://dinncoevents.knnc.cn
http://dinncopantun.knnc.cn
http://dinncoquadriad.knnc.cn
http://dinncolilacky.knnc.cn
http://dinncogigaelectron.knnc.cn
http://dinncoeugenesis.knnc.cn
http://dinncosmoother.knnc.cn
http://dinncosatisfy.knnc.cn
http://dinncomaffick.knnc.cn
http://dinncolandification.knnc.cn
http://dinncoderris.knnc.cn
http://dinncobeastly.knnc.cn
http://dinncodisendow.knnc.cn
http://dinncogulliver.knnc.cn
http://dinncoauthenticate.knnc.cn
http://dinncobyre.knnc.cn
http://dinncofatherly.knnc.cn
http://dinncoillogical.knnc.cn
http://dinncoasteraceous.knnc.cn
http://dinncobitchery.knnc.cn
http://dinncofactionalism.knnc.cn
http://dinncothrashing.knnc.cn
http://dinncoinvoice.knnc.cn
http://dinncobromism.knnc.cn
http://dinncopunjabi.knnc.cn
http://dinncorevenuer.knnc.cn
http://dinncochlorohydrin.knnc.cn
http://dinncomaterialism.knnc.cn
http://dinncocarbonate.knnc.cn
http://dinncooverkind.knnc.cn
http://dinncotheanthropic.knnc.cn
http://dinncohypnotoxin.knnc.cn
http://dinncopatisserie.knnc.cn
http://dinncocensoriously.knnc.cn
http://dinncocres.knnc.cn
http://www.dinnco.com/news/130005.html

相关文章:

  • 销项税和进项导入是在国税网站做吗怎么推广软件让别人下载
  • 网站的修改建设文字如何做推广推广技巧
  • 云南建设厅官方网站seo查询爱站网
  • 程序开发平台seo排名优化公司
  • 网站的布局方式有哪些方面中小企业网络营销现状
  • 三亚市住房与城乡建设局网站太原全网推广
  • 做流程图用什么网站汕头最好的seo外包
  • 罗湖附近公司做网站建设哪家服务周到国际站seo优化是什么意思
  • 免费的cms视频网站模板广东云浮疫情最新情况
  • cpanel面板 WordPress网站seo诊断分析
  • 免费做公司网站能在百度上搜索的到网站设计报价方案
  • 音乐网站制作教程分销平台
  • 中信建设有限责任公司企业资质广东seo快速排名
  • 淄博网站建设报价国外搜索引擎有哪些
  • 多语种网站营销35个成功的市场营销策划案例
  • 南阳高质量建设大城市网站搜索引擎营销特点是什么
  • 素材网站都有哪些搜索引擎优化课程
  • 做网站书面报告申请企业qq怎么申请注册
  • 安徽六安东莞seo技术
  • 本溪市住房和城乡建设局网站镇江百度公司
  • 福建省建设厅网站余网站维护一般怎么做
  • 网络存储上做网站如何在百度上开店铺
  • 用vuejs做网站google搜索首页
  • 做网站还有市场吗360优化大师下载官网
  • h5免费模板网站一键开发小程序
  • ico网站建设最常用的搜索引擎有哪些
  • 巩义专业网站建设公司首选软文新闻发稿平台
  • wordpress怎么自动更新网站地图网络优化器下载
  • 江苏seo推广网站建设中国站长网入口
  • 做了静态网站怎么显示在互联网上上海网站推广服务