Fix: Indrykningsfejl Python



Prøv Vores Instrument Til At Fjerne Problemer

Python er et voksende programmeringssprog, der først blev udgivet i 1991. Sproget er kendt for sit store omfattende bibliotek og understøtter adskillige programmeringsparadigmer som funktionel, bydende, proceduremæssig og objektorienteret.



Indrykningsfejl Python under kodning

Indrykningsfejl i Python



Det ' Indrykningsfejl: Forventet en indrykket blok ’Forekommer for alle slags brugere; om de er nybegyndere eller erfarne. Da Python arrangerer al sin kode med korrekte mellemrum, og hvis du har en dårlig indrykning, kompileres koden ikke, og du får en fejlmeddelelse.



I henhold til de konventioner, der følges i PEP8, skal der være fire hvide rum, hvor det er nødvendigt. Det er ideelt for enhver programmør at bruge korrekte fordybninger, så kodelæsbarheden forbedres.

Hvad forårsager indrykningsfejl i Python?

Som nævnt før opstår denne fejl primært, fordi der er plads- eller fanefejl i din kode. Da Python bruger proceduremæssigt sprog, kan du opleve denne fejl, hvis du ikke har placeret fanerne / mellemrumene korrekt. Programmet kører muligvis korrekt, men hvis tolken finder denne fejl, kommer fejlmeddelelsen frem i midten. Nogle af årsagerne til fejlen er:

  • Du bruger både mellemrum og faner i din kode. Hvis begge bruges om hverandre, kan tolken ikke bestemme, hvilket element der skal bruges.
  • Du har placeret noget indrykning forkert . Hvis indrykningspraksis ikke følges, får du uundgåeligt denne fejl.
  • Du glemte at indrykke sammensatte udsagn såsom 'hvis', 'til', 'mens' osv.
  • Du glemte at indrykke brugerdefinerede funktioner eller klasser .

Løsning 1: Kontrollerer for forkerte hvide mellemrum / faner

Der er ingen øjeblikkelig løsning på dette problem. Da koden er din, skal du gå gennem hver linje og se, hvor du begik fejlen. Der er flere blokke i kode med hensyn til strukturen. Hvis der er et 'Hvis' udsagn, skal der være en fordybning i koden, der følger den.



Blokstruktur, der visualiserer indrykning i Python

Blokstruktur, der visualiserer indrykning

Tjek diagrammet ovenfor. Se, at fordybningen for en bestemt blok forbliver den samme i hele koden, selvom en ny blok introduceres i midten. Sørg for, at din indrykning er konsistent. Hvis du bruger mellemrum, skal du altid bruge mellemrum, og hvis du bruger faner, skal du altid bruge faner. Blandingen af ​​to vil forårsage problemer.

Indrykningseksempel i Python

Indrykningseksempel

Korrekt fordybning vises i eksemplet ovenfor. Se ”for” -sløjfen for at begynde med. Alt inde 'for'-sløjfen skal være indrykket. Inde i 'for' -sløjfen har vi et 'hvis' udsagn. Inde i 'hvis' udsagnet skal alt være yderligere indrykket.

Du kan nemt kontrollere, hvor indrykningsfejlen opstod ved at kontrollere fejlloggen og se linjen, hvorfra fejlen opstod.

Løsning 2: Aktivering af fane- / mellemrumssymboler i editoren

Hvis du har svært ved at indrykke din kode ved 'gætte' som alle programmører, kan du aktivere symbolerne for fane / mellemrum i din IDE eller kode editor. Denne mulighed aktiverer små 'prikker' i din kode, hvor hver prik repræsenterer et mellemrum eller en fane. Du kan bruge dette til at indrykke koden mere korrekt og sørge for, at der ikke er noget ekstra indrykning, eller at der mangler noget.

I dette eksempel tager vi Notepad ++ og ser, hvordan du kan aktivere symbolerne. Hvis du bruger en anden software til kodedigering, kan du aktivere den specifikke indstilling for den.

  1. Trykke Vis> Vis symbol> Vis hvidt mellemrum og TAB Aktivering af mellemrum og fane i Python

    Aktivering af mellemrum og fane - Notesblok ++

  1. Nu er indstillingen aktiveret. Du kan også aktivere Indrykningsvejledning så ting bliver lettere for dig.
Prøvekode med korrekt indrykning i Python

Prøvekode med korrekt indrykning

Tjek eksemplet ovenfor. Se indrykket implementeret efter hver klasse. Hvert mellemrum er repræsenteret af en enkelt prik. Efter at have foretaget ændringer i den forkerte indrykning på din kode, skal du køre den igen og se om dette løser problemet.

Mærker indrykningsfejl python 2 minutter læst