Python 之 try...except...错误捕捉
Python常见异常类型大概分为以下类:
1.AssertionError:当assert断言条件为假的时候抛出的异常
2.AttributeError:当访问的对象属性不存在的时候抛出的异常
3.IndexError:超出对象索引的范围时抛出的异常
4.KeyError:在字典中查找一个不存在的key抛出的异常
5.NameError:访问一个不存在的变量时抛出的异常
6.OSError:操作系统产生的异常
7.SyntaxError:语法错误时会抛出此异常
8.TypeError:类型错误,通常是不通类型之间的操作会出现此异常
9.ZeroDivisionError:进行数学运算时除数为0时会出现此异常
导入:
lib下面的模块文件可以直接导入,如果不是就要指明路径
import class_test #具体到模块名
class_test.add(2, 5)
import 具体到函数名
from class_test import add, sub, ...
add(5, 6)
测试代码 放在if下面
if __name__ == '__main__': #执行程序的主入口
print("今天天气不错!") # 只有当你在当前模块下执行代码的时候才会执行这里面的代码
import time
time.sleep(4)
Python代码里的异常处理
异常:代码运行的时候报错
如果不处理,后续的程序就中断了
1. 最简单的用法 try ... except
try: 放你觉得有问题的代码,放监控代码
except 捕捉错误并进行处理
第一种用法:捕捉错误,不进行处理
try:
print(a)
except: # 捕捉错误
pass # pass 啥都不做,忽略,放生
print("hello, world")
第二种用法:对错误进行简单的处理
try:
print(a)
except:
print("error!!!") 捕捉错误后报错
print("hello, world")
第三种用法:打印出具体的错误
try:
print(a)
except Exception as e: #中央空调
print("出错了:%s" % e)
print("hello, world")
NameError()
try:
print(a)
except NameError as e: # 小太阳
print("出错了:%s" % e)
print("hello, world")
第四种用法:try...except...finally
try:
print(a)
except IndexError as e: # 小太阳
print("出错了:%s" % e)
finally: #无论是否能捕捉到错误,finally后面的程序都运行
print("hello, world")
# 用途:一般我们用在文件或数据库资源的处理
try:
file = open('test.txt', 'w')
file.read()
except Exception as e:
print("出错了:%s" % e)
finally:
file.close()
第五种用法:try...except...else
try:
a = 4
b
except Exception as e:
print("出错了:%s" % e)
else: # 只有当try不报错的时候,才会继续执行
print(a)
# 第五种用法
# 上下文管理器 with...as
with open("test.txt", 'w') as file:
file.write("今天天气真好")
print("with代码内", file.closed)
print(file.closed) # 布尔值
# 什么时候用? mysql, txt文件资源
Python 之 try...except...错误捕捉的更多相关文章
- python学习之调试 错误捕捉及处理
1 捕捉错误:try except Err_Case1: pass except Err_Case2: pass else: 正常情况: finally: 无论是否异常都要 处理的代码 w ...
- 【Flask】 python学习第一章 - 3.0 正则转换和错误捕捉
3.1正则转换器定义 Class RegexConverter(BaseConverter): regex = "[0-9]{6}" app.url_map.converters[ ...
- Python程序的常见错误(收集篇)
关于Python Python是一门解释性的,面向对象的,并具有动态语义的高级编程语言.它高级的内置数据结构,结合其动态类型和动态绑定的特性,使得它在快速应用程序开发(Rapid Applicatio ...
- python学习笔记014——错误和异常
Python有两种错误很容易辨认:语法错误和异常. 1 什么是语法错误 Python 的语法错误或者称之为解析错,是初学者经常碰到的,如下实例 if i>4 print("if语句输出 ...
- Python:no encoding declared 错误
使用Python编译的时候出现如下错误: SyntaxError: Non-ASCII character ‘\xe5’ in file magentonotes.com.py on line 2, ...
- Python学习笔记七-错误和异常
程序员总是和各种错误打交道,学习如何识别并正确的处理程序错误是很有必要的. 7.1错误和异常 1.错误 从软件方面来看,错误分为语法错误和逻辑错误两种.这两种错误都将导致程序无法正常进行下去,当Pyt ...
- Python更新pip出现错误解决方法
Python更新pip出现错误解决方法 更新pip python -m pip install --upgrade pip 查看时报错 解决方法 在命令栏(即win+r)输入:easy_install ...
- Python学习 Part6:错误和异常
Python学习 Part6:错误和异常 两种不同类型的错误:语法错误和异常 1. 语法错误 语法错误,也被称作解析错误: >>> while True print('Hello w ...
- Python 新手常犯错误
Python 新手常犯错误(第二部分) 转发自:http://blog.jobbole.com/43826/ 作用域 在这篇文章里,我们来关注作用域在Python被误用的地方.通常,当我们定义了一个全 ...
随机推荐
- 防止表单提交时刷新页面-阻止form表单的默认提交行为
最近在写 ajax 提交的时候遇到一个问题,在执行 ajax 提交之后,浏览器页面自动刷新了,主要是没有 由于form 表单的默认提交行为.一下是几种阻止 form 表单默认提交行为的方式. 1.使用 ...
- 什么是IOC和什么是AOP,依赖注入(DI)和Ninject,Ninject
我们所需要的是,在一个类内部,不通过创建对象的实例而能够获得某个实现了公开接口的对象的引用.这种“需要”,就称为DI(依赖注入,Dependency Injection),和所谓的IoC(控制反转,I ...
- Invalid prop: custom validator check failed for prop "pagerCount"
在element分页中使用pager-count报错: vue.esm.js?c5de:628 [Vue warn]: Invalid prop: custom validator check fai ...
- 使用HandyJSON导致的内存泄漏问题相关解决方法
在移动开发中,与服务器打交道是不可避免的,从服务器拿到的接口数据最终都会被我们解析成模型,现在比较常见的数据传输格式是json格式,对json格式的解析可以使用原生的解析方式,也可以使用第三方的,我们 ...
- frp 路由穿透(github开源穿透软件)
server配置(windows):下载: https://github.com/fatedier/frp/releases [common] # 服务器端端口 bind_port = # 客户端连接 ...
- yii2 response多次输出问题的查找
{ "IsSuccess": 1, "ErrMsg": "OK", "Data": { "IsSuccess& ...
- https和http的post发送总结
本文为转贴内容,感谢作者阿进! 需要转发数据到客户的https的服务器上出现一系列问题总结如下: 1.因为是https首先考虑到用最新的控件NetHTTPClient(只有在XE8以上才有). 2.客 ...
- mac 下的操作
nodejs在Mac下的卸载 在 node 官网上下载的安装包,用安装包安装的node.应该可以用一下命令行卸载: 在终端输入以下命令: sudo rm -rf /usr/local/{bin/{no ...
- 制作linux云主机镜像
目录 制作linux云主机镜像 1.物理机环境准备 2.安装kvm虚拟机 3.操作虚拟机 4.在物理机上处理镜像 5.拷贝制作好的raw格式的镜像 6.发布镜像到云平台 制作linux云主机镜像 1. ...
- SQL语句复习【专题六】
SQL语句复习[专题六] 用户 + 创建表 --创建一个新的用户,然后给新的用户创建一张表,然后给表中添加一些数据.查询表中的数据 --创建用户需要比较大的权限 DBA create user di ...