day 21 03 补全异常处理
day 21 03 异常处理(补全)
1.异常处理的整体几个语句:
try:
.......#有可能出错的代码
ret=int(input('number >>>'))
print(ret*'*')
except ValueError:
print('您输入的内容错误,请输入一个数字')
except KeyError:
print('请输入正确的格式')
except Exception:
print('你错了,老铁')
else:
print('没有异常的时候执行else里面的代码')#当try里面的代码都执行成功,即没有异常的时候就会执行else里面的代码
finally:
print('====')# 不管有没有异常,都会执行,finally后面的代码都可以继续执行
2.什么时候用finally
举一个例子:无论什么时候,打开一个文件,就会在操作结束后关闭文件,而当不知道操作过程有没有出错的时候就可以用finally了
def func():
try:
f=open('file','w')
return True
except:
return False
finally:
print('执行finall了')
f.close()#肯定是在最后面关闭文件是最好的,无论中间有没有错误,打开了文件,总是要关闭的
print(func())
运行结果:
执行finally了
True
#return肯定是执行了,但是在return的过程中,它先执行了finally里面的代码,后面才接收返回的值,然后结束有跳出函数
finally:不管代码是否异常都会执行
finally和return相遇的时候依然会执行
一般都是在函数里面做异常处理,不管是否异常去做一些收尾工作
3.当使用万能异常机制exception的时候可提示具体哪里错误
try:
# .......#有可能出错的代码
ret=int(input('number >>>'))
print(ret*'*')
# except ValueError:
# print('您输入的内容错误,请输入一个数字')
# except KeyError:
# print('请输入正确的格式')
except Exception as error: #这里加一个as语句,as+起一个名字
print('你错了,老铁',error) #打印的时候也要打印上面起的名字
#输入一个错误的a
number >>>a
你错了,老铁 invalid literal for int() with base : 'a' #会有提示具体哪里出错了
day 21 03 补全异常处理的更多相关文章
- vim下使用YouCompleteMe实现代码提示、补全以及跳转设置
配置YouCompleteMe 1. 安装vundle vundle是一个管理vim插件的工具,使用vundle安装YouCompleteMe比较方便. 按照作者在https://github.com ...
- 自动补全、回滚!介绍一款可视化 sql 诊断利器
Yearning简介 ================= Yearning MYSQL 是一个SQL语句审核平台.提供查询审计,SQL审核等多种功能,支持Mysql,可以在一定程度上解决运维与开发之间 ...
- Oracle补全日志(Supplemental logging)
Oracle补全日志(Supplemental logging)特性因其作用的不同可分为以下几种:最小(Minimal),支持所有字段(all),支持主键(primary key),支持唯一键(uni ...
- 我的Vim配置(自动补全/树形文件浏览)
配置文件的下载路径在这里 http://files.cnblogs.com/files/oloroso/vim.configure.xz.gz 这实际上是一个 xz 格式的文件,添加的 gz 文件后 ...
- Vim自动补全神器:YouCompleteMe
第一次听说这个插件还是在偶然的情况下看到别人的博客,听说了这个插件的大名.本来打算在实训期间来完成安装的,无奈网实在不给力,也就拖到了回家的时候.在开始准备工作的时候就了解到这个插件不是很容易安装,安 ...
- Vim自动补全神器:YouCompleteMe(转)
转自:http://blog.jobbole.com/58978/ 可能会有一段时间写linxu,免不了用vim,留着,找时间实操之 原文出处: marchtea 的博客 第一次听说这个插件还是在偶然 ...
- 小情人emacs的自动补全
前天打字的时候发现手指疼-..OTL-思考了一下可能是我近几个月以来一直在使用全部手敲代码不使用自动补全的"恶果"(当然我还是建议全部手敲的,至少可以感觉到强烈的屌丝满足感). 先 ...
- IntelliJ IDEA 设置代码提示或自动补全的快捷键 (附IntelliJ IDEA常用快捷键)
修改方法如下: 点击 文件菜单(File) –> 点击 设置(Settings- Ctrl+Alt+S), –> 打开设置对话框. 在左侧的导航框中点击 KeyMap. 接着在右边的树型框 ...
- QLineEdit拾遗:数据的过滤、验证和补全
QLineEdit是使用频率最高的控件之一,当我们想获取用户输入时自然而然得会用到它. 通常我们会将QLineEdit的信号或其他控件的信号绑定至槽函数,然后获取并处理编辑器内的数据.你会觉得我们拿到 ...
随机推荐
- 极简版OKEX比特币跨期对冲策略
策略特点 只做正套,反套可以修改下,合约调换一下,即是反套. 添加两个 交易所对象,第一个季度,第二个当周. 精简了所有能简化的代码,优化空间还很大,教学策略谨慎实盘,跨期有一定风险. 欢迎反馈BUG ...
- 《windows核心编程系列》十六谈谈内存映射文件
内存映射文件允许开发人员预订一块地址空间并为该区域调拨物理存储器,与虚拟内存不同的是,内存映射文件的物理存储器来自磁盘中的文件,而非系统的页交换文件.将文件映射到内存中后,我们就可以在内存中操作他们了 ...
- [USACO 2012 Mar Silver] Landscaping【Edit Distance】
传送门:http://www.usaco.org/index.php?page=viewproblem2&cpid=126 好题啊好题,一开始就输给了这道题的想法! 先把原始状态以及目标状态换 ...
- A - Add More Zero
Bryce1010模板 #include <bits/stdc++.h> using namespace std; #define LL long long int main() { in ...
- Linux tcpdump命令英文文档
https://www.computerhope.com/unix/tcpdump.htm
- 188 Best Time to Buy and Sell Stock IV 买卖股票的最佳时机 IV
假设你有一个数组,其中第 i 个元素是第 i 天给定股票的价格.设计一个算法来找到最大的利润.您最多可以完成 k 笔交易.注意:你不可以同时参与多笔交易(你必须在再次购买前出售掉之前的股票). 详见: ...
- D. Mahmoud and a Dictionary 种类并查集
http://codeforces.com/contest/766/problem/D 所谓种类并查集,题型一般如下:给定一些基本信息给你,然后又给出一些信息,要求你判断是真是假.例如给出a和b支持不 ...
- java jar文件打包成exe(Launch4j使用说明)
在日常的项目中需要把jar打包成exe.怎样快速的实现此功能.下面通过Launch4j的使用方法来介绍整个打包过程. 第一步:生成jar文件 第二部:使用Launch4j 图来描述过,简单明了.一切尽 ...
- openmv第一次调试
2018-09-19 20:14:51 import sensor, image, time import car import json import time from pyb import U ...
- java synchronized(object/this)的 区别
1.synchronized(object) package test.thread; import java.io.IOException; import org.junit.Test; /* * ...