• 发文
  • 评论
  • 微博
  • 空间
  • 微信

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

Python进阶学习交流 2019-05-07 09:38 发文


导读


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

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


    



一、异常和异常处理


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

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

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

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

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


二、异常处理的小应用


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

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

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


那我们如何解决呢?


思路:

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

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

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

# 导入必须要的库,一个是读取图片一个是显示图片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()

三、效果展示

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



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

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








声明:本文为OFweek维科号作者发布,不代表OFweek维科号立场。如有侵权或其他问题,请及时联系我们举报。
2
评论

评论

    相关阅读

    暂无数据

    Python进阶学习交流

    专注于分Python网络爬虫、数...

    举报文章问题

    ×
    • 营销广告
    • 重复、旧闻
    • 格式问题
    • 低俗
    • 标题夸张
    • 与事实不符
    • 疑似抄袭
    • 我有话要说
    确定 取消

    举报评论问题

    ×
    • 淫秽色情
    • 营销广告
    • 恶意攻击谩骂
    • 我要吐槽
    确定 取消

    用户登录×

    请输入用户名/手机/邮箱

    请输入密码