Python Errno

Python Errno
Hvert databehandlingsspråk inkluderer et innebygd system for å håndtere feil, og noen er til og med forhåndsprogrammert i kompilatoren. Vi har forbindelser i Python som er koblet til forskjellige vanlige forhåndsbestemte feilkoder. I denne artikkelen skal vi se på hvordan du finner både innebygde feilkoder og feilnumre ved å vurdere en applikasjon av feilkoden etter det. Hver gang en funksjon i Python -programmeringsspråket kalles, får den globale parameteren Errno dynamisk gitt et signal (verdi) som brukes til å bestemme feilkategorien som skjedde. Det er en offentlig variabel som er deklarert i overskrifter -filen errno som indikerer om det oppstår en feil under en prosedyreanrop.

Tallrike metaforiske feilkoder er definert i errno -modulen. I tillegg er det gitt en leksikon-kartleggingsplattformspesifikke aritmetiske feilkoder til abstrakte identiteter. Errno kan være makro, og det skal aldri spesifiseres åpenlyst. Å fikse errno i et enkelt tilfelle påvirker ikke mengden i mange andre tråder fordi det er trådlokal. Feilbetegnelser og heltall, og alle legitime feilrapporter er positive. Hvert kodingsspråk som finnes, bør ha feil. Bugs i Python skjer vanligvis når en spesifikk kodeseksjon ikke følger den anbefalte bruken. Programmerere kommer ofte i problemer med innrykk, syntaks og andre ting.

Hvordan implementere Python Errno

Dette er bare en liste over den innebygde feilstatistikken og feilkodene i denne programvaren. I tillegg til “OS” -modulen, kan vi også bruke "ingen modul" -feil. Det er viktig å forstå at vi ikke vil bli ekspertprogrammerere på et bestemt dataspråk før vi oppfyller mange feil i koden. Vi ser etter kilden til nye feil så snart vi møter dem. Etter hvert begynner vi å se på hvordan vi kan rette opp feilen.

La oss begynne å implementere koden vår for Python som starter med å importere biblioteket med "errno" for å sjekke feiltellingen i koden. Det andre biblioteket som vi importerer er "OS" for å ha sin interaksjon med datasystemet vårt. Nå bruker vi en "W" -variabel som er erklært og brukt med "for" -tilstanden. Vi bruker også "sortert ()" -funksjonen for å ha hvert feilnummer i en sortert eller ordnet form. Vi kaller “Errno.feilkode ”som vår hovedmodul i" sortert () "-funksjonen. Etter implementeringen av hovedprogrammodulen bruker vi “Print ()” -funksjonen og kaller “W” -variabelen i “Print ()” -uttalelsen sammen med “OS.Sterror () ”-funksjon på“ W ”-variabelen for all den mange feilen som genereres her.

Kode:

Importer errno
Importer OS
for w i sortert (errno.feil kode):
trykk (w, ':', os.strerror (w))

Den gitte koden for “Errno” er også gitt i følgende for de andre brukerne å bruke og operere for deres feiltelling i løpsprogrammet.

Etter implementeringen av koden, mottar vi nesten "10093" feil som oppstår i systemkoden vår. Vi viser noen få av dem i denne artikkelen som hovedsakelig skal diskuteres. Det er ikke mulig å vise alle feilene i utgangsskjermen. I den første displayet genererer den viktigste errno fra “1” -indeksen som inkluderer operasjonen som ikke er tillatt, ingen filkatalog, dårlig filbeskrivelse og mange andre, som vi kan se i følgende visning:

Ytterligere feil som oppstår vises i følgende for errno -modulen til Python:

De siste feilene som genereres i den siste kolonnelisten over “10061” til “10093” er de ukjente feilene som følges ut av Python Errno.

For å beskrive det mer elegant, bruker vi et annet eksempel med det forskjellige scenariet til Python Errno. La oss begynne å implementere Python -koden for den på "Spyder" -verktøyet der vi bruker "prøv" og "unntatt" uttalelser. I "prøv" -uttalelsen oppretter vi en funksjon som heter "Our_file" ved hjelp av "Open ()" -funksjonen og oppgi filnavnet "TREASA.txt ”i denne funksjonen. Siden denne filen ikke er til stede i katalogen, bruker vi det fraværende filnavnet og ser hva som skjer og hvordan errno håndterer feilen.

Nå, i koden, bruker vi "IOERROR" i "unntatt" tilstand og lagrer den i "y" -variabelen. Nå bruker vi "IF" -uttalelsen med "Y" -variabelen sammen med ERRNO -modulen og tilordner den med "2". I dette trinnet bruker vi "print ()" -funksjonen to ganger der den første "print ()" -funksjonen har en verdi som kalles "y.strekk ”. Den andre funksjonen har en utskriftsuttalelse som “Vi fant ingen filer .. !”. Nå bruker vi “ELIF” på “Y” -variabelen med Errno og tildeler den verdien av “8”. To "print ()" -funksjoner brukes i de to siste trinnene i koden. Den første "print ()" -funksjonen kalles "y" -variabel med strerror -modulen, og den andre "print ()" -funksjonen er med utskriftserklæringen til "den respektive filen vil ikke bli skrevet ut .. !”.

Koden for errno er gitt i følgende for de andre brukerne å bruke og kjøre den på egen hånd for å forstå den på en bedre måte:

Kode:

prøve:
Our_file = Åpne ('Treasa.tekst')
Bortsett fra Ioerror som y:
Hvis y.errno == 2:
trykk (y.strekk)
Trykk ("Vi fant ingen filer .. !")
elif y.errno == 8:
trykk (y.strekk)
Print ("Den respektive filen vil ikke bli skrevet ut .. !")

Etter kodesamlingen holder vi følgende i utgangsskjermen. Siden filen ikke er opprettet i katalogen, viser den “ingen slik fil eller katalog”. Bare en uttalelse er skrevet ut fra "print ()" -funksjonen til "if" -uttalelsen.

Det siste eksemplet som vi tok her, importerer på samme måte det samme "errno" -biblioteket sammen med biblioteket "sys" som bare kreves med samspillet mellom systemet. Etter importen av både "SYS" og "Errno" -biblioteker, bruker vi "prøv" og "unntatt" forhold der vi definerer "P" -variabelen i "forsøk" med "for" -tilstanden og setter rekkevidden til "15 ”For Errno -variabelen som kjører ved å bruke parameteren“ Range () ”. Deretter, etter å ha angitt området, bruker vi "PRINT ()" -funksjonen og ring "P" -variabelen i "print ()" -funksjonen for at den endelige resultatverdien skal vises på utgangsskjermen.

Etter det definerer vi “IOERROR” i “Bortsett fra” som “P” -variabelen som er definert tidligere. Vi bruker "hvis" betinget uttalelse om "P" -variabelen med errno og tildeler den til utligning til "Errno.Epipe ”. I det siste trinnet bruker vi en "pass" -uttalelse for ikke å gå videre med programmet etter begge forholdene.

Kode:

Importer Sys
Importer errno
prøve:
for p i rekkevidde (15):
trykk (P)
Bortsett fra Ioerror som P:
Hvis s.errno == errno.Epipe:
sende

Den gitte koden på det tredje eksemplet på “Errno” i Python er til stede på øyeblikksbilde -displayet og er gitt i følgende for alle brukere å prøve dette eksemplet på egen hånd for å forstå det på en bedre måte.

Etter å ha fullført kodearbeidet, implementerer vi det i Python “Spyder” -verktøyet og får følgende utdata der det genererer iterasjonen “15” tider og hvor indeksen startes fra “0” og ender opp på “14”. Siden det er en total "på 15" iterasjoner, vil det være minimale "15" sjanser for feilgenerering. Men det håndteres riktig av konseptet feilhåndtering.

Konklusjon

I vår artikkel utdypet vi temaet Python “Errno” der vi brukte tre eksempler for å beskrive dette emnet. Det første eksemplet beskrev det totale antallet feil som skal genereres i vår sekvenskode. I det andre eksemplet har vi sett hvordan vi kan overse feilen som genereres av den fraværende filen til en hvilken som helst katalog. Det tredje eller siste eksemplet på Python viste oss feilhåndterings- eller unntakshåndteringsprosedyren som inkluderer noen betingede uttalelser sammen med "elif", "prøv" og "unntatt" forhold.