Turinys[Slėpti][Rodyti]
Ši paskaita bus svarbi, jei dirbate su didelėmis programomis.
Išmoksite tvarkyti klaidas naudodami išimčių blokus ir naudodami komentarus Python.
išimtys
Išmoksime tvarkyti klaidas Python programose. Pradėkime parašydami nedidelę programą, kad gautume vartotojo amžių iš terminalo.
age = int(input('Age'))
print(age)
Paleiskime.
Dabar pažiūrėkite į šios programos išėjimo kodą. Išėjimo kodas 0 reiškia, kad programa sėkmingai baigta ir klaidų nebuvo. Bet ką daryti, jei šią programą paleisime dar kartą ir užuot įvedę skaitinę reikšmę, įvesime eilutę?
Gauname vertės klaidą su jo pranešimu „netinkamas literal for int() with base 10“ Iš esmės šis pranešimas mums sako, kad šioje eilutėje „qwe“ nėra galiojančio namų numerio, kurį būtų galima konvertuoti į sveikąjį skaičių. Dabar pažiūrėkite į šios programos išėjimo kodą. 1 išėjimo kodas reiškia, kad mūsų išėjimo kodas sudužo, todėl 0 visada reiškia sėkmę, o bet kas, išskyrus 0, reiškia gedimą. Programuodami tokią klaidą vadiname išimtimi.
Kaip geras python programuotojas, turėtumėte numatyti šią situaciją. Nenorite, kad visa programa sugestų tik todėl, kad vartotojas įvedė neteisingą reikšmę. Taigi, užuot leidę programai strigti, turėtumėte susidoroti su situacija ir išspausdinti tinkamą klaidos pranešimą. Būtent tai aš jums parodysiu šioje paskaitoje.
Python programoje turime konstrukciją, vadinamą try except
naudojamas klaidų situacijoms spręsti.
try:
age = int(input('Age'))
print(age)
Šios dvi kodo eilutės yra mūsų dalis try:
blokas. Pridėsime except
blokuoti po jo su klaidos tipu, kurio tikimės.
except ValueError:
print('Invalid Value')
Dabar vertės klaidos atveju ji grąžins eilutę „Netinkama vertė“.
Patikrinkime kitos rūšies klaidą pakeisdami ankstesnę programą.
try:
age = int(input('Age'))
income = 20000
risk = income / age
print(age)
except ValueError:
print('Invalid Value')
Dabar, jei paleisime šią programą ir įvesdami amžių „0“, skaitinę reikšmę. Taigi techniškai neturėtume gauti jokių išimčių.
Paleiskime.
Pažiūrėk. Mūsų programa sudužo ir padarėme „Nulio padalijimo klaidą“, nes negalime padalyti skaičiaus iš 0. Dar kartą pažiūrėkite į išėjimo kodą. Negalėjome aptikti tokios klaidos ar tokios išimties naudojant šį išskyrus bloką.
Šis išskyrus bloką fiksuoja tik tipo vertės klaidos išimtis ir mums reikės naujo bloko, išskyrus bloką, kad būtų galima apdoroti nulinio padalijimo klaidą. Atitinkamai pakeisime programą.
try:
age = int(input('Age'))
income = 20000
risk = income / age
print(age)
except ZeroDivisionError:
print('Age cannot be 0')
except ValueError:
print('Invalid Value')
Problema išspręsta!
- Sintaksės klaida
- Tipo klaida
- Vardo klaida
- Rodyklės klaida
- Vertinimo klaida
- Nulinio skirstymo klaida
- Attributeerror
- Klaida Runtime
- Klaida
- Atminties klaida
- Tvirtinimo klaida
- Įtraukimo klaida
- Eoferror
- Slankiojo rodyklės klaida
- Overflowerror
- Loginė klaida
- Sistemos klaida
- Neįgyvendinta klaida
- Oserror
- Ioerror
- Nuorodos klaida
- Unicode klaida
- Aritmetinė klaida
- Unikodo dekodavimo klaida
- Unikodo kodavimo klaida
- Unikodo vertimo klaida
- Klaida Klaida
Kaip programuotojas, turėtumėte žinoti visas savo programos išimtis ir atitinkamai elgtis su jomis.
komentarai
Dabar kalbėsime apie komentarus python. Komentarus naudojame norėdami pridėti pastabų ar komentarų prie savo programų, kad pagerintume skaitomumą ir perduotume tam tikrą žinią žmogui, skaitančiam mūsų kodą.
Programoje komentarus galima rašyti naudojant # ženklą. Viską, ką rašote po #, Python kompiliatorius nepaisys ir nebus vykdomas. Galite pridėti komentarų prie atskirų eilučių ir po kodo eilutės.
Šiais komentarais galime paaiškinti ką nors apie savo kodą, galime naudoti juos kaip priminimus, kad pataisytume ar išsiaiškintume, arba galime juos naudoti norėdami susisiekti su kitais kūrėjais, skaitančiais mūsų kodą, arba paaiškinti, kodėl šį kodą parašėme tam tikru būdu. Tai tinkami komentarų naudojimo atvejai. taip pat galime turėti komentarų keliose eilutėse. Kiekviena eilutė turi prasidėti nauju # ženklu. Dabar vienas dalykas, kurio reikia vengti naudojant komentarus, yra paaiškinti, ką daro kodas.
Štai blogo komentaro pavyzdys:
Tai blogas komentaras, nes jis man sako, kas akivaizdu. Man sako, kad kitoje eilutėje bus spausdinama „Saulė leidžiasi Vakaruose“. Dabar šio komentaro problema yra ta, kad, be to, kad jis yra daugžodis ir kartojasi, jei atvykstate čia ir keičiate Vakarus į Rytus, šis komentaras pasensta. Taigi, kiekvieną kartą, kai atnaujinsime savo kodą, turėsime sugrįžti ir pakeisti atitinkamą komentarą.
Trumpai tariant, naudokite savo komentarus, kad atsakytumėte į „kaip ir kodėl“, o ne į „kas“.
Štai gero komentaro pavyzdys:
Pirmajame komentare primenu sau, kad turiu atnaujinti šią pajamų vertę prieš baigdamas programą, o antroji reikšmė yra pasakyti kitiems kūrėjams, skaitantiems mano kodą, kad šioje programoje netvarkomos visos klaidos.
Galiausiai turėtumėte vengti perteklinių komentarų, o jūsų komentarai turėtų pridėti šiek tiek vertės jūsų kodui.
Užbaikite!
Išimtys ir komentarai yra du programavimo aspektai, į kuriuos dažnai nepaisoma, o jų reikšmė paprastai neįvertinama.
Sugesti programa yra beveik taip pat blogai, kaip nekomentuoti kodo, kur reikia. Kita paskaita bus skirta klasėms ir konstruktoriams.
Palikti atsakymą