0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

教你防止代碼崩掉的小技巧

電子工程師 ? 來源:fqj ? 2019-06-03 11:11 ? 次閱讀

今天學(xué)了一招很有意思的,乘熱打鐵分享一波!更詳細(xì)的說是關(guān)于python的異常處理的應(yīng)用,實(shí)現(xiàn)一個手誤輸錯也能被原諒的功能。

教你防止代碼崩掉的小技巧

一、異常和異常處理

為了能夠?qū)酉聛淼囊瓿傻氖虑橛袀€更清晰的認(rèn)識,我們需要先了解幾個概念。

第一,什么是異常。異常就是一個事件,該事件在程序執(zhí)行過程中發(fā)生,影響了程序的正常執(zhí)行。

打個不恰當(dāng)?shù)谋扔骶褪牵?dāng)你在泡妞的時候,突然有個傻雕過來說你有口臭,老是放臭屁,直接讓你無法正常泡妞。

第二,什么異常處理,為了解決當(dāng)出現(xiàn)異常時,我們不希望我們的程序掛掉,而進(jìn)行的一些操作。

而異常處理就是類似于在你知道這個倒霉蛋來的時候,肯定沒有好話,你提前預(yù)知到要發(fā)生,反手就是給他一巴掌,然后讓他好好說話,最后事情就朝著好的方向發(fā)展了。

二、異常處理的小應(yīng)用

我們經(jīng)常會遇到比如需要輸入密碼,當(dāng)你輸錯密碼的時候,你不希望退出這個系統(tǒng),而是重新輸入密碼;又或者是要讀取一張圖片,但是有時候手誤打錯路徑,你不想讓整個代碼重頭再運(yùn)行一次,為了讓代碼能夠識別你輸錯并允許你重新輸入,直到你最終正確輸入路徑。

'''實(shí)現(xiàn)手動輸入地址,并讀取圖片'''import matplotlib.image as mpimg #用于讀取圖片path = imput('請輸入路徑:')src= mpimg.imread(path)

###結(jié)果輸出:請輸入路徑:xxx(亂輸)FileNotFoundError:[Errno2]Nosuchfileordirectory:'xxx'

這種情況下,地址輸錯,代碼直接停掉,并不是我們想要的

那我們?nèi)绾谓鉀Q呢?

思路:

(1)找到可能出錯的地方,進(jìn)行檢測判斷;

(2)當(dāng)輸入正確時,直接執(zhí)行下一步操作;

(3)當(dāng)輸入錯誤時,重新執(zhí)行,直到正確。

三、效果展示

使用系統(tǒng)自帶的錄屏軟件操作一遍吧,讓大家看的更加清晰:

這里只是簡單的演示了一個有趣的功能,對于異常處理,自己也學(xué)的不夠深,以后有機(jī)會的話,繼續(xù)研究。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4798

    瀏覽量

    68725
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4798

    瀏覽量

    84798

原文標(biāo)題:學(xué)會這招再也不怕手誤讓代碼崩掉

文章出處:【微信號:lccrunfly,微信公眾號:Python機(jī)器視覺】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    怎么集齊7個云平臺?本文教你!

    每家云平臺都有自己的協(xié)議,工程師要移植不同的SDK代碼或基于各家的手冊文檔對接不同的協(xié)議,看著都頭大,該如何集齊7個云平臺?本文教你!本文將以Air780E+LuatOS作為示例,教你使用IoT_CLOUD連接Tlink云平臺。
    的頭像 發(fā)表于 12-02 14:41 ?503次閱讀
    怎么集齊7個云平臺?本文<b class='flag-5'>教你</b>!

    如何用代碼在運(yùn)行的時候設(shè)置程序防止被讀出?

    如何用代碼在運(yùn)行的時候設(shè)置程序防止被讀出
    發(fā)表于 06-03 07:24

    力天手把手教你學(xué)ARM入門版代碼

    力天手把手教你學(xué)ARM入門版代碼
    發(fā)表于 08-12 20:26

    【視頻匯總】小草大神手把手教你Labview技巧及源代碼分享

    界面的程序源代碼LabVIEW的用戶界面技巧實(shí)例 汽車儀表盤 JKI工具包:更改LabVIEW默認(rèn)圖標(biāo) 更多匯總推薦【匯總篇】小草手把手教你 LabVIEW 串口儀器控制https://bbs.elecfans.com/jishu_468641_1_1.html
    發(fā)表于 05-26 13:48

    手把手教你SIMULINK代碼生成

    FrancisZhao:專欄文章列表以及一些說明?zhuanlan.zhihu.comFrancisZhao:手把手教你代碼生成(下):SIMULINK代碼生成?zhuanlan.zhihu.com
    發(fā)表于 08-18 06:03

    神2也教你學(xué)E語言

    易語言是一門以中文作為程序代碼編程語言學(xué)習(xí)例程:易語言-神2也教你學(xué)E 語言
    發(fā)表于 06-06 17:36 ?2次下載

    教你如何使用AVR-gcc

    教你如何使用AVR-gcc
    發(fā)表于 09-21 11:33 ?12次下載
    <b class='flag-5'>教你</b>如何使用AVR-gcc

    如何在生產(chǎn)時防止代碼泄漏

    的,本文將介紹如何在生產(chǎn)時防止代碼泄漏。 有很多企業(yè)在產(chǎn)品研發(fā)完成后,一般選擇代工廠進(jìn)行批量生產(chǎn),代碼的安全性尤為重要。為了避免工廠直接接觸代碼,一般會在編程器上建立加密工程,對燒錄文
    發(fā)表于 01-26 01:05 ?404次閱讀
    如何在生產(chǎn)時<b class='flag-5'>防止</b><b class='flag-5'>代碼</b>泄漏

    教你自制電子爆竹

    一圖教你自制電子爆竹。
    的頭像 發(fā)表于 02-09 11:02 ?7447次閱讀
    <b class='flag-5'>教你</b>自制電子爆竹

    手把手教你學(xué)LabVIEW視覺設(shè)計(jì)

    手把手教你學(xué)LabVIEW視覺設(shè)計(jì)手把手教你學(xué)LabVIEW視覺設(shè)計(jì)手把手教你學(xué)LabVIEW視覺設(shè)計(jì)手把手教你學(xué)LabVIEW視覺設(shè)計(jì)手把手教你
    發(fā)表于 03-06 01:41 ?3145次閱讀

    教你如何美化Labview界面教程下載

    教你如何美化Labview界面教程下載
    發(fā)表于 09-12 09:40 ?75次下載

    一本教你怎么寫出讓同事無法維護(hù)的代碼

    ?對,你沒看錯,本文就是教你怎么寫出讓同事無法維護(hù)的代碼。一、程序命名 容易輸入的變量名 。比如:Fred,asdf 單字母的變量名 。比如:a,b,c, x,y,z(如果不夠用,可以考慮a1,a2
    的頭像 發(fā)表于 10-11 15:45 ?1183次閱讀

    通過一個案例教你玩轉(zhuǎn)MCU代碼生成工具(基于STM32)

    通過一個案例教你玩轉(zhuǎn)MCU代碼生成工具(基于STM32)
    發(fā)表于 11-18 17:36 ?12次下載
    通過一個案例<b class='flag-5'>教你</b>玩轉(zhuǎn)MCU<b class='flag-5'>代碼</b>生成工具(基于STM32)

    教你如何解決電機(jī)軸修復(fù)問題

    教你如何解決電機(jī)軸修復(fù)問題
    發(fā)表于 12-17 14:10 ?2次下載

    教你如何識別電阻色環(huán)

    教你如何識別電阻色環(huán)
    發(fā)表于 01-17 14:02 ?0次下載