W tym samouczku omówi błąd „Unindent nie pasuje do żadnego zewnętrznego poziomu wcięcia” w Pythonie, dlaczego może się zdarzyć i co możesz zrobić, aby to naprawić.
Co to jest wgłębienie i jak go używamy w Pythonie
Wcięcie odnosi się do przestrzeni dodanej na początku linii. Najbardziej osiągamy to, dodając znak Whitespace przed konkretnym blokiem kodu.
Zgodnie z regułami formatowania Pythona, blok wcięcia należy wykonać przy użyciu czterech znaków przestrzennych na poziom wcięcia.
Przyczyna wcięciaReRror: Unindent nie pasuje do żadnego zewnętrznego poziomu wcięcia.
Python zaleca użycie czterech znaków przestrzeni na poziom kodu.
Jeśli jednak pracujesz nad projektem kodu, który korzysta z kart, powinieneś kontynuować używanie kart w całym programie.
Mieszanie zarówno zakładek, jak i postaci kosmicznych, ponieważ postacie wgłębienia doprowadzi do rzucenia Pythona Wgad. Unindent nie pasuje do żadnego zewnętrznego poziomu wcięcia błąd.
Poprawka: mieszanie zakładek i znaków kosmicznych.
Rozważ przykładowy kod pokazany poniżej:
bo w zakresie (5): 'W powyższym przykładzie mamy dwa wgłębienia, jedno, które używa znaków kosmicznych, a druga, która używa kart.
Jeśli uruchomimy powyższy kod, powinniśmy uzyskać błąd, jak pokazano:
Wgłębienie: nieoczekiwane wcięcieAby rozwiązać ten problem, użyj funkcji formatowania edytora, aby wyszukać wszystkie znaki TABS i zastąpić je spacjami.
W VIM możesz wprowadzić tryb polecenia i uruchomić:
gg = gW kodzie Visual Studio uruchom paletę poleceń, naciskając klawisze Ctrl + Shift + P.
Następnie wyszukaj przekonwertowanie wcięcia na (i wybierz Tabs lub przestrzenie) w zależności od formatu projektu.
Otwórz wyszukiwanie i wymień panel w innych edytorach tekstu, takich jak Sublime lub Notepad++.
Szukaj znaków i zastąp je czterema znakami kosmicznymi.
Fix 2: Niedopasowanie blok wcięcia
Inną przyczyną błędu wcięcia w Pythonie jest umieszczenie niedopasowania wgłębienia.
Na przykład:
x = 100W takim przypadku oświadczenie nie pasuje do swojego nadrzędnego, jeśli blok. Dlatego uruchomienie powyższego kodu zwraca błąd wcięcia.
Możesz to naprawić, wyrównując swoje bloki w dopasowywanych poziomach.
Zamknięcie
W Pythonie błąd „wgłębienia: Unindent nie pasuje do żadnego zewnętrznego poziomu wcięcia” pojawia.