趁着课余时间学点Python(十三)异常处理

简介: 趁着课余时间学点Python(十三)异常处理


image.png

文章目录

前言

📢:❤布小禅❤

📢 作者专栏:

❤Python❤

❤Java❤

关于异常处理,这个是必学的

一、异常/错误

异常就是我们在写代码的时候,爆红啦,高亮啦什么的,还有运行的时候碰到的各种报错啦

我们经常会因为各种各样的报错而头疼——哦!天呐!又报错了!

但是我们应该想想好的,我们编程水平不也随着解决各种各样的报错而提高了吗?

当然我们也可以通过某些方式来避免这种异常,当然这是我们在解决了许许多多的报错后的事啦,也就是现在!是的没错就是现在!O(∩_∩)O哈哈~

一般分为三个类型:编译时错误 、运行时错误 、逻辑型错误

1 编译时错误

就是在写代码的时候,出现了语法上的错误,比如在定义变量的时候

i = 0

在这里,我们就犯了个编译时的错误,缩进不对

IndentationError: unexpected indent

2. 运行时错误

就是语法上没有出现错误,但是编译的时候会出现错误,比如

li = [1, 2, 3, 4, 5]
print(li[5])

在这里,虽然不会爆红,但是却会在运行的时候出现错误

IndexError: list index out of range

意思是索引超出范围,我们的列表的长度为5,但是下标却是从0开始的

3. 逻辑型错误

就是我们的代码不符合逻辑

a = 1;
b = 0;
print(a/b)

就会出现错误

ZeroDivisionError: division by zero

二、异常处理

知道了异常都是些什么类型的,那么我们就来看看,异常怎么处理

是的,我们需要处理异常

在异常没有发生的时候,就将它预料到,提前给他处理了

这叫什么?很明显嘛!紧急避险!

1. 捕获异常

可以使用try:…except:…语句来捕获异常

格式:

try:
    有可能出错的代码块
except 错误类型(可选):
    如果出错应该执行的代码
else:
    如果没错应该执行的代码
finally:
    不管有没有出错,都会执行的代码

当然那个错误类型,如果你不知道是什么类型,不写也可以

直接写解决方案就可以

1.1 try except finally语句

try:
    1/0
except:
    print("被除数不能为0")
finally:
    print("不要捣乱哦,好好输入")

1.2 try except else finally语句

try:
    1/1
except:
    print("被除数不能为0")
else:
    print("运算正确")
finally:
    print("不要捣乱哦,好好输入")

2. 抛出异常

将异常抛出给控制台

也就是平常见的红色报错

try:
    print(a)
except NameError as e:
    pass

这个代码不抛出异常的话,就什么都不执行,正常结束

image.png

而如果抛出异常就是这样

try:
    print(a)
except NameError as e:
    raise e

image.png

3. 自定义异常

通过继承Exception 类来实现自定义异常类

class MyError(Exception):
    def __init__(self, value):
        self.value = value
    def __str__(self):
        return self.value
try:
    raise MyError(2)
except MyError as e:
    print(e.value)

输出:image.png

结语

兴趣是最好的老师,坚持是不变的真理。

学习不要急躁,一步一个脚印,踏踏实实的往前走。

每天进步一点点,日积月累之下,你就会发现自己已经变得很厉害了。

我是布小禅,一枚自学萌新,跟着我每天进步一点点吧!

说了这么多暂时也就够了,那么就告辞吧

image.png


目录
相关文章
|
1月前
|
程序员 开发者 Python
Python网络编程基础(Socket编程) 错误处理和异常处理的最佳实践
【4月更文挑战第11天】在网络编程中,错误处理和异常管理不仅是为了程序的健壮性,也是为了提供清晰的用户反馈以及优雅的故障恢复。在前面的章节中,我们讨论了如何使用`try-except`语句来处理网络错误。现在,我们将深入探讨错误处理和异常处理的最佳实践。
|
1月前
|
Python
python基础篇:如何把异常处理做的更加优雅
python基础篇:如何把异常处理做的更加优雅
20 2
|
1月前
|
安全 程序员 Python
Python中的异常处理与错误调试
【4月更文挑战第8天】本文探讨Python中的异常处理和错误调试,将其比喻为驾驶过程中的意外情况。异常是程序执行时的非正常事件,如文件缺失或网络故障,而错误是代码本身的逻辑或语法问题。Python通过try-except语句处理异常,确保程序在遇到问题时不会立即崩溃。错误调试则需定位问题根源,利用pdb等工具逐行检查代码。这两个技能对保持代码稳定性和可靠性至关重要,能增强程序应对意外的能力并帮助修复潜在问题。
|
1月前
|
索引 Python
python异常处理
python异常处理
|
5天前
|
开发者 Python
【Python 基础】Python中的异常处理是如何进行的?
【5月更文挑战第8天】【Python 基础】Python中的异常处理是如何进行的?
|
6天前
|
Python
Python 中的异常处理机制是一种强大的错误处理工具
Python的异常处理机制借助try/except结构管理错误,提高程序健壮性。异常是中断正常流程的问题,可由多种原因引发。基本结构包括try块(执行可能出错的代码)和except块(处理异常)。通过多个except块可捕获不同类型的异常,finally块确保无论是否异常都执行的代码。此外,raise语句用于主动抛出异常,自定义异常通过继承Exception类实现。with语句配合上下文管理器简化资源管理并确保异常情况下资源正确释放。
17 2
|
7天前
|
程序员 开发者 Python
Python中的异常处理技巧与最佳实践
异常处理在Python编程中至关重要,它能够有效地帮助开发人员识别和解决程序中的错误。本文将介绍Python中常见的异常类型,探讨异常处理的最佳实践,并提供一些实用的技巧,帮助开发者编写更健壮的代码。
|
12天前
|
存储 测试技术 数据库连接
Python异常处理
【5月更文挑战第1天】在Python编程中,异常处理是构建健壮代码的关键。本文介绍了异常处理基础,包括`try`、`except`、`finally`和`raise`关键字的使用。通过示例展示了如何捕获和处理`ZeroDivisionError`等特定异常,以及如何利用`finally`确保资源清理。此外,还分享了最佳实践,如明确指定异常类型、避免捕获所有异常、使用`finally`进行资源清理和记录异常信息。
16 6
|
15天前
|
Java 编译器 数据库
Python的异常处理
Python的异常处理
|
15天前
|
Python
探索Python中的异常处理机制
异常处理是Python编程中至关重要的一环。本文将深入探讨Python中的异常处理机制,包括异常的基本概念、常见的内置异常类型以及如何使用try-except语句来捕获和处理异常。通过详细的示例和解释,读者将对Python中的异常处理有一个全面的了解,并能够编写更加健壮和可靠的代码。