Denne opplæringen vil diskutere "Unindent samsvarer med noen ytre innrykknivå" -feil i Python, hvorfor det kan oppstå, og hva du kan gjøre for å fikse den.
Hva er en innrykk, og hvordan bruker vi den i Python
Innrykk refererer til rommet som er lagt til i begynnelsen av en linje. Vi oppnår dette mest ved å legge til et hvittespace -karakter før en spesifikk kodeblokk.
I henhold til Python -formateringsregler, bør en innrykkblokk gjøres ved å bruke fire romtegn per innrykknivå.
Årsak til innrykk: Unindent samsvarer ikke med noe ytre innrykknivå.
Python anbefaler at du bruker fire romtegn per kodenivå.
Imidlertid, hvis du jobber med et kodeprosjekt som bruker faner, bør du fortsette å bruke faner gjennom hele programmet.
Å blande både faner og romtegn som innrykkstegn vil føre til at Python kaster Innrykk. Unindent samsvarer ikke med noe ytre innrykknivå feil.
Fix: Blanding av faner og romtegn.
Tenk på eksempelkoden vist nedenfor:
for jeg i rekkevidde (5): 'I eksemplet over har vi to innrykk, det ene som bruker romkarakterer og den andre som bruker faner.
Hvis vi kjører koden over, bør vi få en feil som vist:
Innrykk: uventet innrykkFor å løse dette problemet, bruk redigeringsformateringsfunksjonene dine for å søke etter alle tabs -tegn og erstatte dem med mellomrom.
I VIM kan du legge inn kommandomodus og kjøre:
gg = gI Visual Studio Code, start kommandopaletten ved å trykke på tastene Ctrl + Shift + P.
Deretter kan du søke etter konvertering av innrykk til (og velg faner eller mellomrom) avhengig av prosjektformat.
Åpne søket og erstatt panelet i andre tekstredaktører som Sublime eller Notisblokk++.
Søk etter \ T -tegn og erstatt dem med fire romtegn.
Fix 2: Mismatch Indentation Block
En annen årsak til innrykksfeilen i Python er å plassere en uoverensstemmende innrykk.
For eksempel:
x = 100I dette tilfellet samsvarer ikke uttalelsen. Derfor returnerer koden over en innrykksfeil.
Du kan fikse det ved å justere blokkene i samsvarende nivåer.
Lukking
I Python samsvarer ikke "IndentationError: Unindent.