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

Python中的异常处理3-1

Python中的异常指的是语法上没有错误,但是代码执行时会导致错误的情况。

1 抛出异常

在图1所示的代码中,要求用户输入一个数字,该代码在语法上没有错误。

图1 出现异常的代码

但是运行该代码之后,如果用户输入的是数字,则程序会正常运行,while True循环会继续提示用户输入数字,但是当输入的不是数字时,此时程序会显示错误信息,并且while True循环结束,实际上当出现异常时,整个程序就结束了。

2 使用try...except对异常进行处理

可以使用try...except语句对异常进行处理,把要执行的代码放在try块中,把异常处理的代码放到except块中,异常处理的代码指的是当输入的不是数字时,该怎么处理。代码如下所示:

图2 加入异常处理的代码

从图2中可以看到,当输入的不是数字时,此时程序会抛出异常,该异常会被except语句捕获,在捕获该异常后,程序不在报错,而是运行except块中的代码。因为使用了while True语句,因此会再次提示输入数字,直到用户输入正确的数字,while循环才会结束。

3 没有异常处理与有异常处理的区别

代码在运行时出现异常,会抛出该异常。如果代码中没有异常处理,则这个被抛出的异常交由Python处理,此时就会显示图1中红色报错信息,程序会被中止;如果代码中有异常处理,则该异常不会交给Python处理,而是由except块中代码进行处理,在处理完成之后,程序会继续运行,如图3所示。

图3 没有异常处理与有异常处理的区别

http://www.lryc.cn/news/157567.html

相关文章:

  • 大数据与AI:解析智慧城市的幕后英雄
  • 将钉钉机器人小程序从一个公司迁移至另一个公司的步骤
  • j解决Ubuntu无法安装pycairo和PyGObject
  • PBI 背景全屏规律呈现水印
  • 2023年全国职业院校技能大赛信息安全管理与评估网络安全事件响应、数字取证调查、应用程序安全任务书
  • 浙大陈越何钦铭数据结构08-图7 公路村村通【循环和最小堆版】
  • Linux 部署1Panel现代化运维管理面板远程访问
  • 用百度云怎么重装电脑系统
  • SpringCloud环境搭建及入门案例
  • 什么是序列化和反序列化?
  • React 消息文本循环展示
  • java获取jenkins发布版本信息
  • java八股文面试[数据库]——可重复读怎么实现的(MVCC)
  • cl 和 “clangtidy“分别是什么?是同一样东西吗?
  • ubuntu22.04开机自启动Eureka服务
  • 【 OpenGauss源码学习 —— 列存储(analyze)(三)】
  • Element Plus table formatter函数返回html内容
  • c++ mutable
  • element-plus 踩的坑
  • Python、Rust中的协程
  • Vuepress样式修改内容宽度
  • Vue2电商前台项目——项目的初始化及搭建
  • 递归算法学习——N皇后问题,单词搜索
  • 【SpringBoot】mockito+junit 单元测试
  • webserver 同步 I/O 模拟 Proactor 模式的工作流程
  • mysql8-基于docker搭建主从同步
  • 智能水表远程控制系统:引领节水新时代
  • 【FusionInsight 迁移】HBase从C50迁移到6.5.1(03)6.5.1上准备Loader
  • redis多线程操作
  • OpenCV(十七):拉普拉斯图像金字塔