前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【Python】异常处理 ① ( 异常概念 | 异常处理 | 异常捕获 )

【Python】异常处理 ① ( 异常概念 | 异常处理 | 异常捕获 )

作者头像
韩曙亮
发布2023-10-11 19:01:41
2140
发布2023-10-11 19:01:41
举报
文章被收录于专栏:韩曙亮的移动开发专栏

一、Python 异常简介

1、异常概念

Python 异常 是在程序运行过程中发生的错误或问题的表示 ;

出现异常可能会中断程序的正常执行流程 , 并引发一个异常对象 ;

此时 , 需要 捕获和处理 异常对象 , 以防止程序崩溃或引发更严重的错误 ;

2、Python 异常示例

在之前的博客中介绍了文件操作 , 如果以只读的形式打开不存在的文件 , 就会导致异常的出现 ;

出现异常代码 :

代码语言:javascript
复制
"""
文件操作 代码示例
"""
import time

with open("file3.txt", "r", encoding="UTF-8") as file:
    print("使用 write / flush 函数向文件中写出数据(以追加模式打开文件): ")

    # 写出数据
    file.write("Tom and Jerry")

    # 刷新数据
    file.flush()

    # 关闭文件
    file.close()

出现异常 :

代码语言:javascript
复制
/Users/zyq/PycharmProjects/Hello/venv/bin/python /Users/zyq/PycharmProjects/Hello/main.py 
Traceback (most recent call last):
  File "/Users/zyq/PycharmProjects/Hello/main.py", line 6, in <module>
    with open("file3.txt", "r", encoding="UTF-8") as file:
FileNotFoundError: [Errno 2] No such file or directory: 'file3.txt'

Process finished with exit code 1

二、Python 异常处理


程序出现异常有两种情况 :

  • 整个应用因为该异常停止运行 ;
  • 对异常进行捕获处理 , 应用正常运行 ;

1、异常处理简介

程序出现异常导致无法运行 , 这种情况下 并不是要求程序没有异常完美运行 , 而是在力所能及的范围内 , 对可能出现的异常进行处理 ;

异常处理 就是 在可能出现异常的代码块中 , 对可能出现的异常做好提前准备 , 出现异常时将异常捕获 , 然后针对异常类型进行不同的处理 ;

异常捕获语法 :

代码语言:javascript
复制
try:
	可能出现异常的代码块
except:
	出现异常后执行的代码块

2、代码实例 - 出现异常代码

执行

代码语言:javascript
复制
"""
文件操作 代码示例
"""

open("file3.txt", "r", encoding="UTF-8")

代码 , 会报如下异常信息 :

代码语言:javascript
复制
Traceback (most recent call last):
  File "/Users/zyq/PycharmProjects/Hello/main.py", line 6, in <module>
    open("file3.txt", "r", encoding="UTF-8")
FileNotFoundError: [Errno 2] No such file or directory: 'file3.txt'

3、代码实例 - 出现异常并进行捕获处理

代码示例 :

代码语言:javascript
复制
"""
文件操作 代码示例
"""

try:
    open("file3.txt", "r", encoding="UTF-8")
except:
    print("出现异常, 进行异常处理")
    open("file3.txt", "w", encoding="UTF-8")

执行结果 :

代码语言:javascript
复制
/Users/zyq/PycharmProjects/Hello/venv/bin/python /Users/zyq/PycharmProjects/Hello/main.py 
出现异常, 进行异常处理

Process finished with exit code 0
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-10-11,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Python 异常简介
    • 1、异常概念
      • 2、Python 异常示例
      • 二、Python 异常处理
        • 1、异常处理简介
          • 2、代码实例 - 出现异常代码
            • 3、代码实例 - 出现异常并进行捕获处理
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档