基本信息
文件名称:《Python语言程序设计》课件 项目8:异常处理——系统异常处理预案.pptx
文件大小:3.43 MB
总页数:16 页
更新时间:2025-07-01
总字数:约6.33千字
文档摘要

异常处理系统异常处理预案异常捕获异常处理抛出异常提?系统健壮性·增强程序可靠性·保护数据完整性项目八《Python语言程序设计》

任务?标知识?标①掌握常?的异常②掌握捕获与处理异常的语法结构③掌握抛出异常的语法结构能??标①学会处理异常的?法和步骤②能够根据实际需求选择捕获与处理异常的?法③能够根据实际需求灵活抛出异常

为什么需要异常处理提?系统健壮性异常处理使程序更加健壮,能够更好地应对各种异常情况。在软件项?开发中,系统的健壮性是软件质量的重要衡量指标。应对意外情况当程序运?遇到意外情况(如空指针引?、数组越界、?件不存在等)时,适当的异常处理可以捕获并处理这些异常,使程序能够继续正常运?。?便调试和排除故障异常处理可以?便调试和排除故障,提?代码的可维护性。通过捕获和记录异常,开发?员可以更快地定位和解决问题。保护程序安全性异常处理可以保护程序的安全性和数据完整性,降低代码的维护成本,避免程序因为异常?暴露敏感信息或造成数据丢失及损坏。合理的异常处理是构建?质量、可靠软件系统的关键要素

程序错误类型语法错误(SyntaxError)指那些因为不符合语法规则?产?的错误。在Python中,常?的语法错误有标识符命名错误、不正确的缩进等。这类错误通常在编辑或编译时就会被检测出来,如果存在这类错误,程序?般都不会运?。ifx=5:#应该使?==?不是=运?时错误(RuntimeError)指在编写时没有错误,但在程序运?过程中产?错误。例如除数为0、列表索引越界、数据类型不匹配等。?旦出现这类错误,系统就会中?程序运?,然后抛出异常。result=10/0#除数为0错误逻辑错误(LogicError)指编程思路出现了问题。虽然在程序运?的过程中并没有报错,但程序运?结果与预期结果不?致。例如运算符使?不合理、语句次序不正确、循环语句的初始值和终值设置不正确等。total=0;foriinrange(11):total+=i#如果本意是计算1到10,这?错误地从0开始

什么是异常当Python检测到?个错误时,解释器就会指出当前流已?法继续执?下去,这时候就出现了异常。异常是指程序因为出错?在正常控制流以外采取的?为。异常是?个事件,该事件会在程序执?过程中发?,影响程序的正常执?。异常的两个阶段第?阶段检测异常并进?处理使?异常处理结构(如try...except)捕获异常,并根据异常类型执?相应的处理代码,使程序能够继续执?第?阶段错误引发异常程序执?过程中遇到错误(如除数为0、索引越界等),Python解释器检测到错误并创建相应的异常对象理解异常处理机制可以提?系统健壮性,保障程序正常运?

常?异常类Python中常?的异常类及其含义AttributeError对象属性错误BaseException所有异常的?类Exception常规错误?类ImportError导?模块/对象失败IndentationError缩进错误IndexError索引错误IOError输?/输出操作失败NameError对象命名错误SyntaxError语法错误TypeError类型?效错误ValueError?效的参数ZeroDivisionError除(或取模)零

异常捕获结构(一)try...except基本概念try...except是Python中最基本的异常捕获结构,?于捕获程序在运?过程中产?的错误,防?程序因异常?中断执?。语法结构实例演?执?流程执?try块中的代码如果发?异常跳转到匹配的except块执?异常处理代码try:#可能产?异常的代码statement_1statement_2exceptExceptionType:#异常处理代码exception_handlertry:x=int(input(请输??个数字:))result=100/xprint(f100除以{x}的结果是{result})exceptValueError:print(输?错误:请输??个有效的数字)exceptZeroDivisionError:print(错误:不能除以零)

异常捕获结构(二)try...except...else结构说明try...except...else结构是try...except的扩展,增加了else?句:当try块中没有异常发?时,执?else块当try块中发?异常时,执?匹配的except块,不执?else块else块适合放置那些需要在?异常情况下执?的代码使?场景明确区分正常执?路径和异常处理路径在确认操作成功后执?后续步骤提?代码的可读性,让逻辑结构