Enhavtabelo[Kaŝi][Montri]
Ĉi tiu prelego estos grava se vi traktas grandajn programojn.
Vi lernos pritrakti la erarojn per esceptaj blokoj kaj uzante komentojn en Python.
esceptoj
Ni lernos kiel trakti erarojn en Python-programoj. Ni komencu verkante malgrandan programon por akiri la aĝon de la uzanto de la terminalo.
age = int(input('Age'))
print(age)
Ni kuru ĝin.
Nun, rigardu la elirkodon de ĉi tiu programo. Elirkodo 0 signifas, ke nia programo sukcese finiĝis kaj ne estis eraroj. Sed kio se ni ruligas ĉi tiun programon ankoraŭ unu fojon kaj anstataŭ enigi nombran valoron, ni enigas ĉenon?
Ni ricevas valoran eraron kun lia mesaĝo "nevalida laŭvorta por int() kun bazo 10" Esence, kion ĉi tiu mesaĝo diras al ni, estas ke ĉi tiu ĉeno "qwe" ne enhavas validan hejman nombron, kiu povas esti konvertita al entjero. Nun, rigardu la elirkodon de ĉi tiu programo. Elirkodo 1 signifas, ke nia elirkodo kraŝis, do 0 ĉiam signifas sukceson kaj io ajn krom 0 signifas kraŝon. En programado, ni nomas ĉi tiun specon de eraro kiel escepto.
Kiel bona python-programisto, vi devus antaŭvidi ĉi tiun situacion. Vi ne volas lasi vian tutan programon kraŝi nur ĉar la uzanto enigis nevalidan valoron. Do anstataŭ lasi la programon kraŝi vi devus trakti la situacion kaj presi taŭgan erarmesaĝon. Tion mi montros al vi en ĉi tiu prelego.
En Python, ni havas konstruaĵon nomitan try except
uzata por trakti erarsituaciojn.
try:
age = int(input('Age'))
print(age)
Ĉi tiuj du linioj de kodo estas parto de nia try:
bloko. Ni aldonos except
bloku post ĝi kun la tipo de eraro, kiun ni antaŭvidas.
except ValueError:
print('Invalid Value')
Ĝi nun resendos la ĉenon "Malvalida Valoro" en kazo de valora eraro.
Ni kontrolu alian specon de eraro ŝanĝante la antaŭan programon.
try:
age = int(input('Age'))
income = 20000
risk = income / age
print(age)
except ValueError:
print('Invalid Value')
Nun, se ni rulas ĉi tiun programon kaj enigas '0' en aĝo, nombra valoro. Tial, teknike, ni ne devus ricevi esceptojn.
Ni kuru ĝin.
Rigardu. Nia programo kraŝis kaj ni faris "Nul-Dividadan Eraron" ĉar ni ne povas dividi nombron per 0. Denove rigardu la elirkodon. Ni ne povis kapti tian eraron aŭ tian escepton kun ĉi tio krom bloko.
Ĉi tiu krom bloko nur kaptas esceptojn de tipvalora eraro kaj ni bezonos novan krom bloko por trakti Zero Division Error. Ni modifi la programon laŭe.
try:
age = int(input('Age'))
income = 20000
risk = income / age
print(age)
except ZeroDivisionError:
print('Age cannot be 0')
except ValueError:
print('Invalid Value')
La problemo estas solvita!
- Sintaksa eraro
- Tiperaro
- Nomeraro
- Indekseraro
- Valoreraro
- Nuldivideraro
- Atributoeraro
- Runtime eraro
- Ŝlosileraro
- Memoreraro
- Aserta eraro
- Indenteraro
- Eoferaro
- Flotpunktoeraro
- Overfloweraro
- Logika eraro
- Sistemeraro
- Neefektivigita eraro
- Oserror
- Ioeraro
- Referenca eraro
- Unikoda eraro
- Aritmetika eraro
- Unikododekoda eraro
- Unikodokoda eraro
- Unikoda tradukeraro
- Rultempaj Eraroj
Kiel programisto, vi devus esti konscia pri ĉiuj esceptoj en via programo kaj vi devus trakti ilin laŭe.
Komentoj
Nun, ni parolos pri komentoj en python. Ni uzas komentojn por aldoni notojn aŭ komentojn al niaj programoj por plibonigi legeblecon kaj transdoni iun mesaĝon al iu leganta nian kodon.
Komentoj povas esti skribitaj en la programo uzante la signon #. Ĉio, kion vi skribas post la #, estos ignorita de la Python-kompililo kaj ne estos ekzekutita. Vi povas aldoni komentojn pri individuaj linioj same kiel post linio de kodo.
Kun ĉi tiuj komentoj, ni povas klarigi ion pri nia kodo, ni povas uzi ilin kiel memorigilojn por ripari aferojn aŭ klarigi aferojn, aŭ ni povas uzi ilin por komuniki aferojn kun aliaj programistoj, kiuj legas nian kodon aŭ por klarigi kial ni skribis ĉi tiun kodon en certan manieron. Ĉi tiuj estas bonaj uzkazoj por uzi komentojn. ni ankaŭ povas havi komentojn super pluraj linioj. Ĉiu linio devus komenciĝi per nova # signo. Nun unu afero, kiun vi devas eviti kiam vi uzas komentojn, estas klarigi kion faras la kodo.
Jen ekzemplo de malbona komento:
Ĉi tio estas malbona komento ĉar ĝi diras al mi la evidentan. Ĝi diras al mi, ke la sekva linio presigos “Suno subiras en la Okcidento”. Nun la problemo kun ĉi tiu komento estas, ke krom esti multvorta kaj ripetema se vi venas ĉi tien kaj ŝanĝas Okcidenton al Oriento, ĉi tiu komento malnoviĝas. Do, ĉiufoje kiam ni ĝisdatigas nian kodon, ni devos reveni kaj modifi la respondan komenton.
Mallonge, uzu viajn komentojn por respondi kiel kaj kial anstataŭ kio estas.
Jen ekzemplo de bona komento:
En la unua komento, mi memorigas min, ke mi devas ĝisdatigi ĉi tiun enspezvaloron antaŭ fini la programon kaj la dua valoro diras al aliaj programistoj, kiuj legas mian kodon, ke ĉiuj eraroj ne estas traktataj en ĉi tiu programo.
Konklude, vi devus eviti superfluajn komentojn kaj viaj komentoj devus aldoni iom da valoro al via kodo.
Envolviĝu!
Esceptoj kaj komentoj estas du aspektoj de programado, kiuj ofte estas preteratentitaj kaj ilia signifo estas kutime subtaksita.
Frakasi vian programon estas preskaŭ same malbona kiel ne komenti vian kodon kie necesas. La sekva prelego fokusiĝos pri Klasoj kaj Konstruistoj.
Lasi Respondon