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

文章目录

  • 一、Python 异常简介
    • 1、异常概念
    • 2、Python 异常示例
  • 二、Python 异常处理
    • 1、异常处理简介
    • 2、代码实例 - 出现异常代码
    • 3、代码实例 - 出现异常并进行捕获处理





一、Python 异常简介




1、异常概念


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

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

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


2、Python 异常示例


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

出现异常代码 :

"""
文件操作 代码示例
"""
import time

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

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

    # 刷新数据
    file.flush()

    # 关闭文件
    file.close()

出现异常 :

/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张图片





二、Python 异常处理



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

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

1、异常处理简介


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

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

异常捕获语法 :

try:
	可能出现异常的代码块
except:
	出现异常后执行的代码块

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


执行

"""
文件操作 代码示例
"""

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

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

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、代码实例 - 出现异常并进行捕获处理


代码示例 :

"""
文件操作 代码示例
"""

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

执行结果 :

/Users/zyq/PycharmProjects/Hello/venv/bin/python /Users/zyq/PycharmProjects/Hello/main.py 
出现异常, 进行异常处理

Process finished with exit code 0

【Python】异常处理 ① ( 异常概念 | 异常处理 | 异常捕获 )_第2张图片

你可能感兴趣的:(Python,python,开发语言,异常处理,异常,异常捕获)