O que é a indentação e o que acontece se esquecermos de indentar dentro de um if ou for em Python?
Passo 1
Beleza! A questão pergunta “o que é indentação e o que acontece se esquecermos de indentar dentro de um
if
ou for
em Python?”. O conteúdo aqui é sintaxe básica de Python—mais especificamente, como Python reconhece blocos de código. Para responder, a gente vai precisar explicar (1) o que significa “indentação” no contexto do Python e (2) o que o interpretador faz quando não encontra a indentação onde deveria.Passo 2
Indentação, em Python, é o recuo que você faz com espaços (ou tabs) antes de cada linha de código para indicar “este pedaço pertence a este bloco”. Em outras linguagens a gente usa
{}
ou palavras-chave, mas em Python a única forma de dizer “essa linha tá dentro do if
” ou “dentro do for
” é recuando ela. Exemplinho bem simples:if x > 0:
print("x é positivo")
y = x + 1
print("fim do programa")
Repare que as duas linhas com 4 espaços (ou um tab) estão dentru do
if
. Quem não estiver recuado, como o print("fim do programa")
, sai do bloco.Passo 3
O Python obriga você a indentar corretamente. Se você esquecer de recuar qualquer linha que deveria estar dentro do
if
ou for
, o interpretador vai reclamar na hora de rodar:if x > 0:
print("x é positivo")
Nesse caso, você vai receber um erro do tipo
IndentationError: expected an indented block after 'if' statement on line 1
Ou seja, o Python diz “esperava um bloco indentado ali” e interrompe o programa. Isso significa que seu código não roda até você arrumar a indentação.
Passo 4
Além do erro, existe ainda o risco de lógica errada se você indentar de forma inconsistente:
for i in range(3):
print(i)
print("feito")
Aqui “feito” fica fora do
for
e só aparece uma vez, depois do laço. Se você recuasse sem querer o print("feito")
, ele rodaria 3 vezes dentro do laço, mudando o resultado do seu programa. Então, além de erros de sintaxe, a indentação errada pode gerar bugs difíceis de rastrear.Resposta
Indentação em Python é o recuo obrigatório (com espaços ou tabs) que marca onde começam e terminam blocos de código, como os de
if
e for
. Se você não indentar ou indentar errado, o interpretador levanta um IndentationError
e não executa o programa. Além disso, mesmo que não dê erro, a indentação incorreta pode alterar totalmente a lógica do seu código.