返回顶部
首页 > 资讯 > 后端开发 > Python >Python全栈开发之异常处理
  • 223
分享到

Python全栈开发之异常处理

异常Python 2023-01-31 01:01:20 223人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

No.1 异常的概念 程序在运行过程中,遇到一个错误,会停止程序的运行,并且提示一些错误信息,这就是异常 程序停止执行并且提示错误信息这个动作,称为抛出异常 No.2 捕获异常 简单捕获异常格式 捕获异常最简单的语法格式: try:

No.1 异常的概念

程序在运行过程中,遇到一个错误,会停止程序的运行,并且提示一些错误信息,这就是异常

程序停止执行并且提示错误信息这个动作,称为抛出异常

No.2 捕获异常

简单捕获异常格式

捕获异常最简单的语法格式:

try:
    尝试执行的代码
except:
    出现错误的处理

要求用户输入整数

try:
    num = int(input("请输入数字:"))
except:
    print("请输入正确的数字")

错误类型捕获

在程序执行中,我们可能因为业务逻辑不同要捕获不同类型的异常,并且针对不同的异常,做出不同的处理逻辑

try:
    尝试执行的代码
except 错误类型1:
    针对错误类型1,对应的代码处理
except (错误类型2, 错误类型3):
    针对错误类型2 和 3,对应的代码处理
except Exception as result:
    print("未知错误 %s" % result)

异常捕获完整语法

try:
    尝试执行的代码
except 错误类型1:
    针对错误类型1,对应的代码处理
except 错误类型2:
    针对错误类型2,对应的代码处理
except (错误类型3, 错误类型4):
    针对错误类型3 和 4,对应的代码处理
except Exception as result:
    未知异常
else:
    没有异常才会执行的代码
    pass
finally:
    无论是否有异常,都会执行的代码

No.3 传递异常

当函数执行过程中发生了异常,将会把异常传递给给函数的调用者,如果传递到主函数,还没有被处理,才会终止运行

开发过程中,可以在主函数中增加异常捕获

在主函数调用其他函数产生异常的时候,只要出现异常,都会传递到主函数的异常处理

减少了代码重复,保证了代码的可读性

No.4 抛出异常

在开发中,除了代码执行出错python解释器会抛出异常外,还可以使用关键字raise主动抛出异常

def auth_password():
    pwd = input("请输入密码:")
    if len(pwd) >= 8:
        return pwd
    ex = Exception("密码长度不够")
    raise ex

if __name__ == '__main__':
    try:
        user_pwd = auth_password()
        print(user_pwd)
    except Exception as result:
        print("发现错误:%s" % result)

No.5 自定义异常

Python有两种异常,一种是内置异常,一种是自定义异常

Python全栈开发之异常处理

我们发现Python所有异常继承于BaseException,异常继承自Exception,所以我们定义的异常也要继承自Exception

class DemoException(Exception):

    def __str__(self):
        return '自定义异常'

if __name__ == '__main__':
    try:
        raise DemoException()
    except DemoException as e:
        print(e) # 自定义异常

--结束END--

本文标题: Python全栈开发之异常处理

本文链接: https://lsjlt.com/news/184681.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python全栈开发之异常处理
    No.1 异常的概念 程序在运行过程中,遇到一个错误,会停止程序的运行,并且提示一些错误信息,这就是异常 程序停止执行并且提示错误信息这个动作,称为抛出异常 No.2 捕获异常 简单捕获异常格式 捕获异常最简单的语法格式: try: ...
    99+
    2023-01-31
    异常 Python
  • Python全栈开发之常用模块
    No.1 sys sys模块是与Python解释器交互的一个接口 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.exit(n) 退出程序,正常退出时exit(0),错误退出sys.exit(1) sys.vers...
    99+
    2023-01-31
    模块 常用 Python
  • Python全栈开发之---assert
    一、python assert的作用: 根据Python 官方文档解释(https://docs.python.org/3/reference/simple_stmts.html#assert), "Assert statements a...
    99+
    2023-01-30
    Python assert
  • Python全栈开发之Git
    No.1 Git 特点 版本控制:可以解决多人同时开发的代码问题,也可以找回历史代码 分布式:Git是一个分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上,首先会有一台计算机充当服务器,这台计算机7*24小时服务,其他计算机都...
    99+
    2023-01-31
    Python Git
  • Python全栈开发之---mysql数
    1、数据库的安装和连接 1 #数据库安装 2 pip install PyMySQL 3 4 #数据库操作 5 import pymysql 6 7 db = pymysql.connect("数据库ip","用户",...
    99+
    2023-01-30
    Python mysql
  • Python全栈开发之函数
    No.1 函数介绍 所谓函数,就是把具有独立功能的代码块组织为一个小模块,在需要的时候调用 函数的使用有两个步骤:1、定义函数2、调用函数 函数的作用,代码重用,提高开发效率 No.2 定义和调用 定义函数的格式如下: def 函数名():...
    99+
    2023-01-31
    函数 Python
  • python全栈开发之Python基础(
    一、 基础知识 python的运行方式有两种: 第一种通过交互式的运行方式,通过 "开始"—>"所有程序" —> "python3.x" —>"IDLE" 运行。 第二种是我们写好的Python文件双击运行。 ...
    99+
    2023-01-31
    基础 python Python
  • Python全栈开发之并发编程
    No.1 线程 什么是多任务 就是操作系统可以同时运行多个任务,就是可以一边用浏览器上网,同时又可以听歌,还能再撩个×××姐,这就是多任务,操作系统会轮流把系统调度到每个核心上去执行 并发和并行 并发是指任务数多余cpu核数,通过操作系统的...
    99+
    2023-01-31
    Python
  • Python全栈开发之---装饰器
    1、装饰器的形成过程 1 import time 2 3 def func1(): 4 print('in func1') 5 6 def timer(func): 7 def inner(): 8...
    99+
    2023-01-30
    Python
  • Python全栈开发之Django基础
    No.1 MVC&MTV MVC M全拼为Model,主要封装对数据库层的访问,对数据库中的数据进行增、删、改、查操作 V全拼为View,用于封装结果,生成页面展示的html内容 C全拼为Controller,用于接收请求,处理业务...
    99+
    2023-01-31
    基础 Python Django
  • Python全栈开发之Django进阶
    No.1 静态文件处理 项目中CSS、JS、图片都属于静态文件,一般会将静态文件存到一个单独目录中,便于管理,在HTML页面调用时,需要指定静态文件的路径,Django提供了一种解析静态文件的机制,文件可以放在项目目录下,也可以放在应用目录...
    99+
    2023-01-31
    进阶 Python Django
  • .NET6开发TodoList应用之实现全局异常处理
    目录需求目标原理和思路实现验证总结参考资料需求 因为在项目中,会有各种各样的领域异常或系统异常被抛出来,那么在Controller里就需要进行完整的try-catch捕获,并根据是否...
    99+
    2024-04-02
  • Python 之异常处理
    一 错误和异常 •错误分两种: 1、语法错误 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # 举列 4 print('hello world' # 少) 5 6 def ...
    99+
    2023-01-30
    异常 Python
  • Python之异常处理
    错误包括语法错误和逻辑错误 异常是程序运行时发生错误的信号,解释器追踪程序,根据错误抛出的异常。 常用的异常: AttributeError 试图访问一个对象没有的树形,比如foo.x,但是foo没有属性xIOError 输入/输出异常...
    99+
    2023-01-30
    异常 Python
  • Python全栈开发之文件操作
    No.1 文件的概念 文件的概念和作用 计算机中的文件,就是存储在某种长期储存设备上的一段数据流 计算机中的文件,可以在需要的时候使用 文件的存储方式 文本文件 可以使用文本编辑器查看 本质上还是二进制文件 二进制文件 保留的内容不能直接...
    99+
    2023-01-31
    操作 文件 Python
  • Python全栈开发之网络编程
    No.1 TCP/IP 早期的计算机网络,都是由厂商规定自己的通信协议,互不兼容,为了把全世界不同类型的计算机连接起来,就必须规定一套全球通用的协议,所以就出现了TCP/IP No.2 Socket简介 要解决怎么标识一个进制,在一台电...
    99+
    2023-01-31
    网络编程 Python
  • Python全栈开发之面向对象
    No.1 概念 面向对象的特点? 注重对象和指责,不同的对象承担各自的指责 更加适合对复杂的需求变化,专门应对复杂项目开发,提供固定的套路 面向对象强调的是谁来做,面向过程强调的如何做 什么是类 类是对一群具有相同特征或者行为的事物统称,是...
    99+
    2023-01-31
    面向对象 Python
  • Python全栈开发之基础语法
    No.1 Python语言介绍 详情见百度百科。。。 No.2 Python是一门怎么样的语言 详情在百度百科。。。 No.3 Python能做什么 网络应用、桌面应用、系统运维、机器学习、科学计算。。。 网络应用 Django/Flas...
    99+
    2023-01-31
    语法 基础 Python
  • 详解Flask开发技巧之异常处理
    目录一、Flask内置异常处理二、HTTPException类分析三、自定义异常处理类四、方便的定义自己的错误类五、注意事项一、Flask内置异常处理 要想在Flask中处理好异常,...
    99+
    2024-04-02
  • python学习之异常处理
    一、语法导致的异常,应该在程序运行前处理 例子: print( 输出: File "E:/python/oldboyday9/learn1.py", line 4     if      ^ SyntaxError: invalid sy...
    99+
    2023-01-31
    异常 python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作