python中的异常

2023-11-02

目录

一、常见的几种异常

二、异常的处理


异常就是指程序出错,我们平常所说的报错了就是程序出现异常

一、常见的几种异常

1.NameError  指变量未定义,系统识别不到出错的变量名

 2.ValueError

# 要求输入一个整数
input_str = input("输入一个整数")
# 使用int方法将字符串转换为十进制整数,如果字符串不是纯数字就会报错
# 比如我输入一个abc
input_value = int(input_str)

 因为int方法不能转换字符串"abc",所以会出现异常ValueError

 3.TypeError

# 定义一个整数a,值为10
a = 10
# 定义一个字符串b,内容为abc
b = "abc"
# 计算a + b
c = a + b

 因为字符串和整数不能使用加号计算,所以出现异常TypeError

4.ZeroDivisionError

 因为0不能作为被除数,因此当被除数为零时会出现异常ZeroDivisionError

5.FileNotFoundError

 因为我的当前路径下并没有111.py这个文件,所以会出现异常FileNotFoundError

二、异常的处理

出异常会导致程序终止运行,对用户来说及其不友好,因此我们需要对异常进行处理,达到即使出现异常也不会导致程序终止的目的,python中通过使用try方法处理异常

# 创建一个死循环
while True:
    # 使用try对可能会出现异常的代码进行异常捕获
    try:
        input_str = input("输入一个整数")
        input_value = int(input_str)
    # 使用except对出现的异常进行处理
    # 比如我这里可能会出现ValueError,因此针对该异常进行处理
    except ValueError as e:
        # 如果出现ValueError异常则会输出print语句
        print("输入不合法", e.args[0])
    # 如果没有出现异常则执行else中的语句
    else:
        print("你输入的是", input_value)
    # 无论是否出现异常都会执行finally中的语句
    finally:
        print("处理完成")

 

 运行之后可以发现经过处理后即使程序出现异常也不会终止程序的运行,大大提高了用户使用友好性。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python中的异常 的相关文章

随机推荐

  • 【java】mybatis-plus lambda表达式符号总结

    1 函数名及用法 查询学生 QueryWrapper
  • 基于java的俄罗斯方块小游戏设计(含源文件)

    欢迎添加微信互相交流学习哦 项目源码 https gitee com oklongmm biye 题 目 小游戏开发 摘 要 俄罗斯方块是我们最常见的游戏之一 该游戏出现过在掌上游戏机 家用游戏机 手机游戏和电脑游戏中 因此俄罗斯方块也是一
  • TencentOS-tiny 内核基础组件(十 七)- 环形队列

    一 内核基础组件 环形队列 概述 环形队列本质上就是支持先入先出操作的环形buffer 是系统的一个基础组件 通常用来作为实现上层机制的底层数据容器 API讲解 编程实例 1 编写main c示例代码 USER CODE END Heade
  • Lambda表达式、函数式接口

    一 Lambda 1 1 概述 Lambda表达式是一种没有名字的函数 也可以称为闭包 是Java8发布的最重要新特性 本质上是一段匿名内部类 也可以是一段可以传递的代码 还有的叫箭头函数 1 2 优点 是匿名内部类的简写方式 使代码更加简
  • 提交表单不刷新当前页面

    使用ajax上传文件方法 众所周知ajax是使用了浏览器内部的XmlHttpRequest对象来传输XML数据的 既然是Xml的数据传输 那么传输的数据肯定是文本的 而文件上传则需要传输二进制的数据 显然用ajax是不可能的 这里要说的是用
  • Error getting 'State' for /org/freedesktop/NetworkManager/ActiveConnection/0: (19) Method "Get" wit

    虚拟机使用的是无线驱动 但是本机使用的却是有线网络 导致激活不了
  • 「2022」打算跳槽涨薪,必问面试题及答案 -- JavaScript 篇

    Hi 我是 今日与君共勉 1 深浅拷贝的区别有哪些 要说 js 的深浅拷贝 就不得不提 js 的两大数据类型 基本数据类型和引用类型 基本数据类型的变量名和值都存储在栈中 对于引用类型的变量名存储在栈中 而值存储在堆中 由于存储方式不同 所
  • tensorflow can not find libcusolver.so.8.0

    ImportError libcusolver so 8 0 cannot open shared object file No such file or directory solution export LD LIBRARY PATH
  • 【毕业设计】深度学习水果识别系统 - python CNN

    文章目录 1 前言 2 开发简介 3 识别原理 3 1 传统图像识别原理 3 2 深度学习水果识别 4 数据集 5 部分关键代码 5 1 处理训练集的数据结构 5 2 模型网络结构 5 3 训练模型 6 识别效果 7 最后 1 前言 Hi
  • 【JavaScript学习笔记】鼠标样式

    style cursor hand 手形 style cursor crosshair 十字形 style cursor text 文本形 style cursor wait 沙漏形 style cursor move 十字箭头形 styl
  • git中rejected的解决方法

    在网上搜了一下 出现这种情况的原因是因为git仓库中已经有一部分代码 所以它不允许你直接把你的代码覆盖上去 第一种解决方法是强推 即利用强覆盖方式用你本地的代码替代git仓库内的内容 git push f 第二种解决办法是先把git的东西f
  • Java面试官在面试时喜欢问哪些问题?

    作为一名技术总监 我管理的技术团队有100多人 面试的Java程序员不要太多 不同的面试官 面试的要求也不太一样 例如 有的要求表达好 会沟通 有的要求技术好 能直接上手撸代码 搞项目 有的要求人踏实 稍微带一带 能干活就行 有的要求 我的
  • 轮播图禁用手势滑动

    要禁用手势滑动 并只允许自动轮播 你可以使用autoplayDisableOnInteraction属性来实现 以下是如何在Flutter中使用flutter swiper插件进行配置 首先 在pubspec yaml文件中添加flutte
  • 03 开始使用openEuler操作系统

    文章目录 03 开始使用openEuler操作系统 3 1 目标 3 2 Linux以及openEuler中的GUI与CLI 3 3 Linux的两种登录方式 3 3 1 本地登录 3 3 2 远程登陆 3 4 退出登录 注销 3 5 op
  • 【Markdown语法高级】 让你的博客更精彩(三:常用图标模板)

    引言 铭记于心 我唯一知道的 便是我一无所知 概述 众所周知 Markdown是一种轻量级标记语言 创始人为约翰 格鲁伯 英语 John Gruber 它允许人们使用易读易写的纯文本格式编写文档 然后转换成有效的XHTML 或者HTML 文
  • 【工作经验】基于Vue2,element ui,vue-cli,vuex,vue-router,axios,echarts,markdown-loader并结合个人前端学习笔记的vue前端框架实例

    demo目的 vue是目前主要的前端框架 虽然目前网页制作通常以前后端分离的形式 然而前端知识不止是前端工程师需要掌握 后端工程师 数据工程师 数据分析师都有必要有所了解 本demo旨在记录个人前端学习中的笔记以及学习网页前端主流vue框架
  • SpringSecurity创建角色和设置权限

    一 创建角色在之前创建完项目后 可以在SpringSecurityConfig类中重写configure方法并进行自定义创建角色 public class SpringSecurityConfig extends WebSecurityCo
  • git push fatal: 不能读commit id 问题

    现象 git merge分支的时候无冲突 git push提示一下报错 fatal 不能读 fdc91c997bd43dddd3eb84094e79b5a681453475 error 远程解包失败 eof before pack head
  • python文件夹之间的调用

    1 同一目录下的调用 incoke py def add a b print a b main py from incoke import add add 5 6 import incoke是调用整个文件夹 from incoke impo
  • python中的异常

    目录 一 常见的几种异常 二 异常的处理 异常就是指程序出错 我们平常所说的报错了就是程序出现异常 一 常见的几种异常 1 NameError 指变量未定义 系统识别不到出错的变量名 2 ValueError 要求输入一个整数 input