【Python基础】之异常
一、常见异常
try:
open('abc.txt','r')
except FileNotFoundError:
print('异常啦!')
输出结果:
=======
异常啦!
我们通过 open()方法以读“r”的方式打开一个 abc.txt 的文件。然后 Python 抛出一个FileNotFoundError 类型的异常,它告诉我们:No such file or directory:“abc.txt”(没有abc.txt 这样的文件或目录)。当然找不到,因为我们根本就没创建这个文件。
既然知道执行 open()一个不存在的文件时会抛 FileNotFoundError 异常,那么我们就可以通过 Python 所提供的 try...except...语句来接收并处理这个异常。
二、基类BaseException
try:
open(aa)
except BaseException:
print('异常啦!') 输出结果:
=======
异常啦!
三、msg变量接收异常信息
try:
open('abc.txt','r')
print(aa)
except BaseException as msg:
print(msg) 输出结果:
=======
[Errno 2] No such file or directory: 'abc.txt'
Python中常见的异常如下表:

四、try...except...else的使用
try:
a = '测试:'
print(a)
except Exception as msg:
print(msg)
else:
print('没有异常!') 输出结果:
=======
测试:
没有异常!
五、try...except...finally的使用
try:
print(a)
except Exception as msg:
print(msg)
finally:
print('我永远被执行!') 输出结果:
======
name 'a' is not defined
我永远被执行!
六、抛出异常raise
from random import randint #1~9随机数选
number = randint(1,9) if number % 2 == 0:
raise NameError('%d is even' %number)
else:
raise NameError('%d is odd',%number) 输出结果:
======
Traceback (most recent call last):
File "F:\Pytest\abnormal.py", line 30, in <module>
raise NameError("%d is odd" %number)
NameError: 7 is odd
【Python基础】之异常的更多相关文章
- 十九. Python基础(19)--异常
十九. Python基础(19)--异常 1 ● 捕获异常 if VS异常处理: if是预防异常出现, 异常处理是处理异常出现 异常处理一般格式: try: <............. ...
- Python基础之异常定义
技术背景 在各类python的项目中,总会涉及到项目自身相关的一些约束条件.这些约束条件体现在,当用户输入的参数或者文件不符合项目要求时,就拒绝这个参数的输入并且播报出来,提醒用户自行修改,而这一过程 ...
- [Python基础]008.异常
异常 异常处理 捕获异常 抛出异常 自定义异常 一些常见的异常 异常处理 捕获异常 try/except 与C,java等语言用try/catch来捕获异常相似,Python使用try/except ...
- Python基础学习----异常
''' 异常: 程序在运行的时候,Python的解释器遇到一个错误会停止运行. 并且会提供错误的信息,这就是异常 抛出异常: 程序停止执行并且提示错误信息这个动作就是抛出异常(raise Except ...
- Python基础(10) - 异常
Python 异常:程序出现了错误而在正常控制流以外采取的行为 Python中常见的异常: 1. NameError:尝试访问一个未声明的变量 >>> something Trace ...
- Python基础之异常
一.摘要 Python使用被称为异常 的特殊对象来管理程序执行期间发生的错误.每当发生让Python不知所措的错误时,它都会创建一个异常对象.如果你编写了处理该异常的代码,程序将继续运行:如果你未对异 ...
- python基础:异常捕捉
一.异常 python在程序运行过程中,可能会出现一些错误和异常,导致程序停止运行.我们可以通过捕捉异常,并对异常进行处理,使得程序可以正常运行 异常有很多类型,可以根据类型挨个捕捉.也可统一捕获: ...
- python基础之 异常处理和logging模块
1.异常处理 l = ['apple','admin','kobe'] for id,item in enumerate(l,1): print(id,item) try: choose_id = i ...
- Python基础灬异常
异常&异常处理 异常!=错误 在程序运行过程中,总会遇到各种各样的错误. 有的错误是程序编写有问题造成的,比如本来应该输出整数结果输出了字符串,这种错误我们通常称之为bug,bug是必须修复的 ...
- Python基础:开篇
一.概述 Python基础 是对 Python(2.7版本)基本语法的要点总结,主要参考了以下资料: Python核心编程(第二版) Learning Python (3rd Edition) Pyt ...
随机推荐
- echarts中关于merge的代码
function merge(target, source, overwrite) { // We should escapse that source is string // and enter ...
- uva 11491:Erasing and Winning(贪心)
题意:给一个长n(n<10^5)位的数,删除d位,求删除后最大的数.(原数无前导0) 思路:从前往后扫,如果a[i] > a[i-1],则删除a[i-1].我暴力的用链表实现了…… #in ...
- cobbler一键部署centos7.4(脚本)
执行脚本之前你需要做四件事 1. 关闭防火墙 2.关闭selinux 3.配置163或者阿里云的 yum源 4.上传centos7.4的镜像如下图 [root@cobbler ~]# cat auto ...
- 【BZOJ1562】【jzyzOJ1730】【COGS409】NOI2009变换序列 二分图匹配
[问题描述] 对于N个整数0, 1, ……, N-1,一个变换序列T可以将i变成Ti,其中 定义x和y之间的距离.给定每个i和Ti之间的距离D(i,Ti), 你需要求出一个满足要求的变换 ...
- springBoot 整合 mybatis+Oracle
现在比较流行的操作数据库操作层框架Mybatis,下面我们就来看看Springboot如何整合mybatis, 之前一直在用xml形式写sql,这次依然用xml的方式感觉这种还是比较灵活方便. 添加m ...
- 基于django的网站开发一基础项目配置
首先确认电脑上已经安装好了python和django,我的python版本是2.7.13,django版本是1.10.2.数据库我使用的是mysql,版本是5.7.17,我是windows7系统,用的 ...
- (转)python装饰器进阶一
Python装饰器进阶之一 先看例子 网上有很多装饰器的文章,上来说半天也没让人看明白装饰器到底是个什么,究竟有什么用,我们直接来看几个例子. Python递归求斐波那契数列 def fibonacc ...
- 防止sql注入和跨站脚本攻击,跨站请求伪造以及一句话木马的学习记录
以下是来自精通脚本黑客的学习记录 防止以上漏洞的最好的方式 一对用户的输入进行编码,对用户输入进行编码,然后存入数据库,取出时解码成utf-8 二对用户的输入进行过滤,过滤jscript,javasc ...
- Java中对象、对象引用、堆、栈、值传递以及引用传递的详解
Java中对象.对象引用.堆.栈.值传递以及引用传递的详解 1.对象和对象引用的差别: (1).对象: 万物皆对象.对象是类的实例. 在Java中new是用来在堆上创建对象用的. 一个对象能够被多个引 ...
- [Python] SQLBuilder 演示样例代码
用Python写一个SQLBuilder.Java版能够从 http://www.java2s.com/Code/Java/Database-SQL-JDBC/SQLBuilder.htm 看到. 附 ...