Introdução à programação
com Python em um contexto visual


O que é indentação?

A palavra indentação também significa ‘recuo’, veja este exemplo de uma lista de compras relativamente organizada:

comes:
    pão
    cebola
    abacate
    alho
    
bebes:
    chá mate
    sucos:
        maçã
        uva
        laranja
    refrigerantes:
        água tônica

O espaço que faz os itens ficarem ‘dentro’ das categorias é a indentação. Exatamente da mesma maneira, em Python, criamos blocos de código que estão ‘dentro’ de estruturas. Note os dois pontos (:) antes de um bloco indentado na lista de compras.

Essa sintaxe com o espaço de indentação, e com : , vai ser usada em inúmeras estruturas de Python, como if/elif/else, nos laços de repetição for e while, na definição de novas funções com def, entre outras.

Animando uma estrela com o movimento do mouse

Vamos ver agora um exemplo que precisa de indentação, avançando um pouco em ideias cujos detalhes você pode retomar depois na página sobre movimento.

A função setup() e a função draw()

Podemos reorganizar o código anterior mostrado no primeiro contato com polígonos colocando os ajustes iniciais (setup), como size(200,200), dentro da definição de função def setup():, e a parte que desenha (draw) dentro de def draw():.

A função setup() vai ser executada apenas uma vez no começo, e a função draw() fica repetindo sem parar, permitindo o movimento. Repare como a indentação é o que determina o que está dentro de cada função.

def setup():
    size(400, 400)

def draw():
    background(0, 0, 200)  # para limpar a área de desenho
    x, y = width / 2, height / 2  # coordenadas do centro

    a = mouseX / 4
    b = mouseY / 4

    beginShape()
    vertex(x - a, y - a)
    vertex(x - b, y)
    vertex(x - a, y + a)
    vertex(x    , y + b)
    vertex(x + a, y + a)
    vertex(x + b, y)
    vertex(x + a, y - a)
    vertex(x    , y - b)
    endShape(CLOSE)

Veja o resultado aqui

Assuntos relacionados