【Python进阶(一)】——异常与错误

🍉CSDN小墨&晓末:https://blog.csdn.net/jd1813346972

   个人介绍: 研一|统计学|干货分享
         擅长Python、Matlab、R等主流编程软件
         累计十余项国家级比赛奖项,参与研究经费10w、40w级横向

文章目录

  • 1 try/except/finally
  • 2 异常信息的显示模式
    • 2.1 异常信息显示模式1:Plain
    • 2.2 异常信息显示模式1:Plai2
    • 2.3 异常信息显示模式3:Context(默认值)
  • 3 断言

【Python进阶(一)】——异常与错误,建议收藏!


该篇文章主要演示Python中的异常与错误,包括try/except/finally的使用;异常信息显示模式;断言等内容。

1 try/except/finally

  运行程序:

try: #可能发生异常的语句f=open('myfile.txt','w')while True:s=input("请输入Q")if s.upper()=='Q':breakf.write(s+'\n')
except KeyboardInterrupt: #发生此异常时,要执行的语句;except:发生其他异常时要执行的语句;else:无异常时,要执行的语句print("程序中断")
finally:f.close()#不管是否发生异常,都要执行的语句

  运行结果:

请输入Qq

2 异常信息的显示模式

2.1 异常信息显示模式1:Plain

  运行程序:

%xmode Plain  #异常信息显示模式1:Plain
x=1
x1

  运行结果:

Exception reporting mode: Plain
Traceback (most recent call last):File "<ipython-input-37-d5101d382d83>", line 3, in <module>x1NameError: name 'x1' is not defined

2.2 异常信息显示模式1:Plai2

  运行程序:

%xmode Verbose #异常信息显示模式2:Verbose
x=1
x1

  运行结果:

Traceback (most recent call last):File "<ipython-input-38-443ceef4ba36>", line 3, in <module>x1NameError: name 'x1' is not defined

2.3 异常信息显示模式3:Context(默认值)

  运行程序:

%xmode Context  #异常信息显示模式3:Context(默认值)
x=1
x1

  运行结果:

Traceback (most recent call last):File "<ipython-input-39-d2b0226b5ef6>", line 3, in <module>x1NameError: name 'x1' is not defined

3 断言

  运行程序:

##断言主要用于“设置检查点”
a=1
b=2
assert b!=0 , "分母不能等于0"  #assert后未检查条件,当此条件为假时,抛出断言,条件为真,则不能抛出AssertionErrora=1
b=0
assert b!=0 , "分母不能等于0"  #条件为假,抛出AssertionError

  运行结果:

Traceback (most recent call last):File "<ipython-input-44-b71c74981dc7>", line 3, in <module>assert b!=0 , "分母不能等于0"AssertionError: 分母不能等于0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/783610.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python | 输出n位数的各位位数

xinput(请输入一位n位数:)print(*map(int,x)) 在Python中&#xff0c;input() 函数接收用户的输入并返回一个字符串。当你执行 x input(请输入一位n位数:) 时&#xff0c;x 将包含用户输入的字符序列。 接下来&#xff0c;map(int, x) 会对字符串 x 中的每一个字符应用 int 函…

【uC/OS-III篇】uC/OS-III 移植到 STM32 简明教程

uC/OS-III 移植到 STM32 简明教程 一、uC/OS-III 介绍 二、获取UCOS-III源码 三、建立项目工程 四、解决工程编译报错 五、修改项目文件 下一篇博客&#xff1a; 【uC/OS-III篇】uC/OS-III 创建第一个任务&#xff08;For STM32&#xff09; 移植后的工程自取方式&#xf…

玩转Django分页器

一、Pagination 分页器编程步骤 View, 导入django.core.paginator.Paginator类&#xff0c;创建Paginator 对象时&#xff0c;输入qs对象&#xff0c;以及每页显示条数。 接收 URL, 从请求参数中读取page数值 &#xff0c;通过 paginator.page(page_num) 返回请求页的page_obj…

从 PG 技术峰会南京站汲取的那些干货

3月30日下午&#xff0c;“PostgreSQL 数据库技术峰会”南京站圆满举办。 这场峰会同步在线上直播&#xff0c;近 2000 人在线观看。 感谢各位大佬带来精彩演讲。 1. 可观测性 第一场正式演讲是白鳝前辈带来的《PostgreSQL 数据库的可观测性能力》。 数据库的可观测性的重要性不…

Mysql数据库:MHA高可用架构

目录 前言 一、MHA概述 1、什么是MHA 2、MHA的特点 3、MHA的组成 4、MHA的工作原理 5、故障切换备选主库的算法 二、部署MHA高可用架构 1、环境部署 2、部署主从同步 2.1 修改主配置文件并创建软链接 2.1.1 master 修改主配置文件并创建软连接 2.1.2 slave1 修改主…

os模块篇(四)

专栏目录 文章目录 专栏目录os.setregid(rgid, egid, /)os.setreuid(ruid, euid, /)os.getsid(pid, /)os.setsid()os.setuid(uid, /)os.strerror(code, /)os.umask(mask, /)os.uname()os.unsetenv(key, /)os.unshare(flags) os.setregid(rgid, egid, /) os.setregid(rgid, egi…

算法学习——LeetCode力扣补充篇5 (52. N 皇后 II、649. Dota2 参议院、1221. 分割平衡字符串、5. 最长回文子串)

算法学习——LeetCode力扣补充篇5 52. N 皇后 II 52. N 皇后 II - 力扣&#xff08;LeetCode&#xff09; 描述 n 皇后问题 研究的是如何将 n 个皇后放置在 n n 的棋盘上&#xff0c;并且使皇后彼此之间不能相互攻击。 给你一个整数 n &#xff0c;返回 n 皇后问题 不同的…

免费!微软推出全球第一个生成式AI认证

微软在官网宣布一项新的人工智能计划&#xff0c;包括与 LinkedIn联合推出免费的生成式AI课程和专业认证证书&#xff1b;微软与数据平台data.org、开源社区GitHub 等合作&#xff0c;发一起全球生成式AI挑战赛&#xff0c;为参赛的组织提供资金、技术、培训等帮助。 用户学习…

视觉SLAM理论与实践的学习链接汇总

仅供学习&#xff0c;在此感谢所有乐于分享知识的大佬们~ 一、 ORB_SLAM理论 视觉SLAM 前端 后端 回环 建图 1、 前端视觉里程计 1.1 特征点法 一文带你搞懂相机内参外参(Intrinsics & Extrinsics)-知乎 VSLAM 笔记——我们如何通过图像来计算位姿的变化&#xff…

文生图大模型三部曲:DDPM、LDM、SD 详细讲解!

1、引言 跨模态大模型是指能够在不同感官模态(如视觉、语言、音频等)之间进行信息转换的大规模语言模型。当前图文跨模态大模型主要有&#xff1a; 文生图大模型&#xff1a;如 Stable Diffusion系列、DALL-E系列、Imagen等 图文匹配大模型&#xff1a;如CLIP、Chinese CLIP、…

力扣刷题Days28-第二题-11.盛水最多的容器(js)

目录 1&#xff0c;题目 2&#xff0c;代码 3&#xff0c;学习与总结 3.1思路回顾 1&#xff0c;如何遍历 2&#xff0c;算法流程 3.2剖析问题 1&#xff0c;题目 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, h…

Keil界面乱了,某些图标消失

文章目录 如图 如图 我都不知道怎么搞的第一个 重启界面解决了

vue2源码--依赖收集

vue2源码–依赖收集 Dep Dep是用来收集渲染的变量的。比如 {{age}} {{text}} 需要渲染&#xff0c;但是在后续中改变了age&#xff0c; text&#xff0c; 以及hobby这个变量&#xff0c;只会收集需要渲染的数据。 Watcher 通知dep的变化&#xff0c;被dep收集 一个dep可以有…

学习【零拷贝】这一篇就够了

目录 1. 什么是零拷贝2. 传统的IO执行流程3. 零拷贝相关知识3-1. 内核空间和用户空间3-2. 什么是用户态、内核态3-3. 什么是上下文切换3-4. 虚拟内存3-5. DMA技术 4. 零拷贝实现的几种方式4-1. mmapwrite实现的零拷贝4-2. sendfile实现的零拷贝4-3. sendfileDMA scatter/gather…

深度学习网络缝合模块学习

主干网络缝合模块------>缝模块对其通道数 1缝合模块只看通道数 2把模块复制到模型中 3在forward中查看通道数是多少 4在init中进行实例化&#xff0c;注意通道数是上一步forward的通道数 5在forward中加载init中的实例化 6模型实例化测试模块是否加入 模块和模块之前…

程序数据模型由OS还是硬件架构决定?

文章目录 前言硬件架构的作用OS的作用编译器的角色OS的数据模型参考 前言 在文章 1>>32的结果是1还是0 中提到了数据模型 L P 64 LP64 LP64 &#xff0c;并提出这个数据模型主要是由 U n i x Unix Unix 以及类 U n i x Unix Unix 的操作系统使用居多&#xff0c;例如…

C++教学——从入门到精通 6.ASCII码与字符型

如何把小写字母转换成大写字母呢&#xff1f; 这个问题问的好&#xff0c;首先我们要新学一个类型——char 这个类型就是字符型 再来说说ASCII码 给大家举几个例子 空格————32 0————48 9————57 A————65 Z————90 a————97 z————122 我们…

若依框架学习使用

若依官网项目拉取下来介绍 | RuoYi 项目运行&#xff1a; 1.idea安装&#xff0c;可以运行前后端 编辑器idea、jdk环境安装、数据库mysql、navicat工具、redis(redis-server启动)安装 2.navicat数据库连接, 创建数据库ry-vue并导入数据脚本ry_2021xxxx.sql&#xff0c;qua…

二. CUDA编程入门-Stream与Event

目录 前言0. 简述1. 执行一下我们的第九个CUDA程序2. Stream是什么3. Streams实验(单流vs多流)4. 如何隐藏延迟(memory)5. 如何隐藏延迟(kernel)6. 如何隐藏延迟(kernelmemory)7. 代码分析总结参考 前言 自动驾驶之心推出的 《CUDA与TensorRT部署实战课程》&#xff0c;链接。记…

达梦数据库ODBC驱动安装和配置

达梦数据库ODBC驱动安装和配置 ODBC安装和配置测试连接 ODBC安装和配置 将ODBC驱动安装包解压到安装路径下&#xff1a; mv unixODBC-2.3.0.tar.gz /opt cd /opt && tar -zvxf unixODBC-2.3.0.tar.gz 使用root用户编译安装ODBC驱动&#xff1a; cd /opt/unixODBC-2.…