前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >学会这招再也不怕手误让代码崩掉

学会这招再也不怕手误让代码崩掉

作者头像
AI算法与图像处理
发布2019-05-22 18:46:03
7740
发布2019-05-22 18:46:03
举报

导读

今天学了一招很有意思的,乘热打铁分享一波!

更详细的说是关于python的异常处理的应用,实现一个手误输错也能被原谅的功能,非常好用和有趣哦 >_<

一、异常和异常处理

为了能够对接下来的要完成的事情有个更清晰的认识,我们需要先了解几个概念。

第一,什么是异常。异常就是一个事件,该事件在程序执行过程中发生,影响了程序的正常执行。

打个不恰当的比喻就是,当你在泡妞的时候,突然有个傻雕过来说你有口臭,老是放臭屁,直接让你无法正常泡妞。

第二,什么异常处理,为了解决当出现异常时,我们不希望我们的程序挂掉,而进行的一些操作。

而异常处理就是类似于在你知道这个倒霉蛋来的时候,肯定没有好话,你提前预知到要发生,反手就是给他一巴掌,然后让他好好说话,最后事情就朝着好的方向发展了。

二、异常处理的小应用

我们经常会遇到比如需要输入密码,当你输错密码的时候,你不希望退出这个系统,而是重新输入密码;又或者是要读取一张图片,但是有时候手误打错路径,你不想让整个代码重头再运行一次,为了让代码能够识别你输错并允许你重新输入,直到你最终正确输入路径。

代码语言:javascript
复制
'''实现手动输入地址,并读取图片'''import matplotlib.image as mpimg #用于读取图片path = imput('请输入路径:')src = mpimg.imread(path)
代码语言:javascript
复制
###结果输出:请输入路径:xxx(乱输)FileNotFoundError: [Errno 2] No such file or directory: 'xxx'

这种情况下,地址输错,代码直接停掉,并不是我们想要的

那我们如何解决呢?

思路:

(1)找到可能出错的地方,进行检测判断;

(2)当输入正确时,直接执行下一步操作;

(3)当输入错误时,重新执行,直到正确。

代码语言:javascript
复制
# 导入必须要的库,一个是读取图片一个是显示图片import matplotlib.image as mpimgimport matplotlib.pyplot as plt# (1)对可能出错的地方,设置异常处理def url_is_correct():    try:  #(2)当输入正确时,直接执行下一步操作;        url = input('请输入正确的图片路径:')        queryDir = url        src = mpimg.imread(queryDir)        return queryDir     except:        print('有误的图片路径,请重新输入:')    return url_is_correct() # (3)当输入错误时,重新执行,直到正确。
queryDir = url_is_correct()queryImg = mpimg.imread(queryDir)plt.imshow(queryImg,cmap=plt.cm.gray)plt.show()

完整代码:https://github.com/DWCTOD/AI_study/blob/master/06-yichangchuli

三、效果展示

使用系统自带的录屏软件操作一遍吧,让大家看的更加清晰:

难受啊,不知道为什么显示的图片有问题,这个录屏软件有毒,自己电脑上面看的没事的!!!以后再研究一哈。

这里只是简单的演示了一个有趣的功能,对于异常处理,自己也学的不够深,以后有机会的话,继续研究一哈!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-04-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI算法与图像处理 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档