首页 > 其他分享 >寒假生活(14)

寒假生活(14)

时间:2024-01-23 20:35:26浏览次数:28  
标签:生活 14 代码 引发 except try finally 寒假 异常

我们的团队项目是前后端同时进行,然后再进行精修。我现在只剩下小程序个人中心部分了,这几天先等其他部分的后端完成,再一同推进进度,所以今天继续python学习。今天的内容是异常处理。

异常处理是一种在程序遇到错误或异常情况时进行捕获、处理和恢复的机制。在Python中,你可以使用try...except语句来实现异常处理。以下是关于异常处理的一些基本知识:

  1. try...except语句:

    • try块:在try块中放置可能引发异常的代码。
    • except块:在except块中定义处理异常的代码块。可以指定捕获特定类型的异常。
    • else块(可选):在try块中的代码没有引发任何异常时执行。
    • finally块(可选):无论是否引发异常,finally块中的代码都会执行。
  2. 捕获特定类型的异常:

    • 可以使用多个except块来捕获不同类型的异常。从上到下逐个检查except块,直到找到与引发的异常匹配的块为止。
    • 可以使用as关键字将引发的异常赋值给一个变量,在except块中使用该变量进行处理。
    try:
        # 可能引发异常的代码
        result = 10 / 0
    except ZeroDivisionError as e:
        print("除以零错误:", e)
    
  3. 捕获所有异常:

    • 可以使用except块捕获所有类型的异常。这样做可能会隐藏一些错误,并不推荐在生产环境中使用。
    try:
        # 可能引发异常的代码
        result = 10 / 0
    except Exception as e:
        print("发生异常:", e)
    
  4. else块的使用:

    • 可以在try...except语句中使用else块,该块中的代码只有在try块中的代码没有引发任何异常时才会执行。
    try:
        # 可能引发异常的代码
        result = 10 / 2
    except ZeroDivisionError as e:
        print("除以零错误:", e)
    else:
        print("结果:", result)
    
  5. finally块的使用:

    • 可以在try...except语句中使用finally块,无论是否引发异常,该块中的代码都会执行。通常用于释放资源或清理操作。
    try:
        # 可能引发异常的代码
        file = open("file.txt", "r")
        content = file.read()
    except FileNotFoundError as e:
        print("文件未找到:", e)
    finally:
        file.close()  # 无论是否发生异常,都要关闭文件
    

这些是关于异常处理的基本知识。使用异常处理可以增强程序的健壮性,并提供友好的错误提示和恢复机制。在实际开发中,根据具体需求和场景选择适当的异常处理方式。

标签:生活,14,代码,引发,except,try,finally,寒假,异常
From: https://www.cnblogs.com/zjsdbk/p/17983360

相关文章

  • APIO2014 回文串
    APIO2014回文串decription给定一个长度为\(n\)的字符串\(S\)。求其所有回文子串中出现次数乘上长度的最大值。\(n\leq3\times10^5\)solution根据经典结论,长度为\(n\)的字符串的本质不同回文子串个数不超过\(n\)个,我们可以找出所有本质不同回文子串,然后计算它们的......
  • 寒假学习(13)
    今天我继续学习python知识。今天主要学习的是文件操作,这个知识我从学习C语言开始就一直不熟悉,不仅因为它在教学的最后一章,知识讲的较少,更引文平时学习中基本用不到文件操作,所以这部分我用了很长时间。打开和关闭文件:open() 函数:用于打开一个文件,并返回一个文件对象。有两个......
  • 寒假生活指导15
    #相关模块导入fromseleniumimportwebdriver#selenium4版本必须要设置浏览器选项,否则会闪退option=webdriver.EdgeOptions()option.add_experimental_option("detach",True)#实例化浏览器驱动对象,并将配置浏览器选项driver=webdriver.Edge(options=option)#......
  • hey_left 14 Codeforces Round 849 (Div. 4) 续
    题目链接F.区间修改,单点查询,考虑用树状数组可以维护每个点需要操作的次数然后直接对询问的点进行操作#include<bits/stdc++.h>usingnamespacestd;constintN=2e5+10;#defineintlonglongstructTreeArray{vector<int>tree;TreeArray(intn){......
  • [转帖]ORA-01450 maximum key length (3215) exceeded
    一、问题背景给一个业务表online建索引时遇到了ORA-01450maximumkeylength(3215)exceeded报错,看字面意思是字段太长了,检查表字段类型发现基本都是nvarchar2(2000),有些字段(例如unit)明显是不需要这么长的,表的设计有问题,联系开发按实际需求改短后能正常创建。奇怪的是表的......
  • arcengine GP调用PolygonToLine 报错 -2147467259
    这个原因是传参数问题;GP调用面转线工具时,不能利用该方式传入参数IGpValueTableObjectgpValueTableObject=newGpValueTableObject();//对一个及以上要素类进行相交运算gpValueTableObject.SetColumns(2);objecto1=pFeatureClass2;//输入IFeatureC......
  • [POI2014] KUR-Couriers
    可持久化线段树维护由任意一段区间得到的权值线段树线段树的深度:\(ceil(log_{2}(n))+1\)由于询问的特殊性,我们可以直接在线段树上二分,而不需要另写查询函数,从而节省掉1个log的复杂度点击查看代码#include<bits/stdc++.h>usingnamespacestd;inttot,root[500005];int......
  • macOS Sonoma 14.3 (23D56) 正式版发布,ISO、IPSW、PKG 下载 (重大更新)
    macOSSonoma14.3(23D56)正式版发布,ISO、IPSW、PKG下载(重大更新)本站下载的macOS软件包,既可以拖拽到Applications(应用程序)下直接安装,也可以制作启动U盘安装,或者在虚拟机中启动安装。另外也支持在Windows和Linux中创建可引导介质。作者主页:sysin.org更新摘要:mac......
  • macOS Sonoma 14.3 (23D56) 正式版 Boot ISO 原版可引导镜像下载 (重大更新)
    macOSSonoma14.3(23D56)正式版BootISO原版可引导镜像下载(重大更新)本站下载的macOS软件包,既可以拖拽到Applications(应用程序)下直接安装,也可以制作启动U盘安装,或者在虚拟机中启动安装。另外也支持在Windows和Linux中创建可引导介质。作者主页:sysin.org更新摘......
  • 快乐生活比第一重要
    那天,一家人一起看王小丫的“开心辞典”,不时哈哈大笑。这个节目,充满了智慧和人性的美丽。总有梦想会被实现,也总有更多的陷阱虚位以待,而王小丫的微笑永远不败,不停地问你:“继续吗?”继续下去,或者成功,或者失败,退回到原点。这是逆水行舟的世界,不进则退。答对十二道题的人并不多,往往是到三......