turtle

Python Turtle: como criar uma corrida de tartarugas

Neste tutorial você vai aprender a usar o módulo Turtle do Python para criar um mini-jogo de corrida de tartarugas.

Ao final, teremos duas tartarugas (vermelha e azul) disputando uma corrida até uma linha de chegada quadriculada, com uma mensagem final indicando quem venceu.

Esse projeto é ideal para praticar lógica de programação, laços de repetição, funções e o uso de bibliotecas padrão do Python.

Exemplo Prático: Race Turtle

Aqui está o jogo que usaremos como referência:

Passo 1: Importando as bibliotecas necessárias

O módulo turtle já vem junto com o Python, e é ele que permite desenhar e animar elementos na tela.

Também vamos usar random para sortear o avanço das tartarugas e time para controlar a velocidade da corrida.

				
					from turtle import *
from random import randint
from time import sleep

				
			

Passo 2: Definindo a linha de chegada

A corrida precisa de um ponto final. Vamos criar uma constante chamada finish, que representa a coordenada X onde as tartarugas devem chegar.

				
					# Posição final da linha de chegada
finish = 200

				
			

Passo 3: Desenhando a linha de chegada quadriculada

Agora vamos criar a função drawFinishLine().
Ela desenha duas colunas de quadrados, alternando preto e branco, para simular uma linha de chegada de corrida.

				
					def drawFinishLine():
    linha = Turtle()
    linha.hideturtle()
    linha.speed(0)
    linha.penup()

    square_size = 20
    start_y = 100
    colors = ['black', 'white']

    # Duas colunas verticais
    for col in range(2):
        x = finish + col * square_size
        y = start_y

        for i in range(10):
            linha.goto(x, y - i * square_size)
            linha.fillcolor(colors[(col + i) % 2])  # alterna cor
            linha.begin_fill()
            for _ in range(4):
                linha.pendown()
                linha.forward(square_size)
                linha.right(90)
            linha.end_fill()
            linha.penup()

				
			

Explicação:

  • hideturtle(): esconde o cursor da tartaruga.

  • fillcolor(), begin_fill() e end_fill(): preenchem cada quadrado.

  • O laço for desenha vários quadrados alternando as cores.

Passo 4: Criando uma função para posicionar as tartarugas

Vamos facilitar nosso código criando a função startRace(), que recebe uma tartaruga e a posiciona no ponto de largada com a cor desejada.

				
					def startRace(t, x, y, color):
    t.color(color)
    t.shape('turtle')
    t.speed(100)
    t.penup()
    t.goto(x, y)

				
			

Explicação:

  • shape('turtle'): define o formato do cursor como uma tartaruga.

  • goto(x, y): leva a tartaruga para a posição inicial.

Passo 5: Criando a função principal do jogo

Agora vamos programar o coração da corrida. Dentro da função main() vamos:

  1. Desenhar a linha de chegada.

  2. Criar as tartarugas competidoras.

  3. Iniciar a corrida com movimentos aleatórios.

  4. Mostrar quem venceu.

				
					def main():
    # Desenha linha de chegada
    drawFinishLine()

    # Cria as tartarugas
    t1 = Turtle()  # vermelha
    t2 = Turtle()  # azul

    # Posiciona no ponto inicial
    startRace(t1, -200, -20, 'red')
    startRace(t2, -200, 20, 'blue')

    # Pausa antes da largada
    sleep(1)

    # Loop da corrida
    while t1.xcor() < finish and t2.xcor() < finish:
        t1.forward(randint(10, 17))  # vermelho
        t2.forward(randint(2, 7))    # azul
        sleep(0.1)

    # Limpa rastros
    t1.clear()
    t2.clear()
    t1.hideturtle()
    t2.hideturtle()

    # Escreve o vencedor
    mensagem = Turtle()
    mensagem.hideturtle()
    mensagem.penup()
    mensagem.goto(-80, 0)
    mensagem.color('green')

    if t1.xcor() > t2.xcor():
        mensagem.write("VERMELHA VENCEU!", font=('Arial', 24, 'bold'))
    else:
        mensagem.write("AZUL VENCEU!", font=('Arial', 24, 'bold'))

    exitonclick()

				
			

Explicação:

  • xcor(): retorna a posição X atual da tartaruga.

  • O while mantém a corrida até uma delas cruzar a linha de chegada.

  • Após a corrida, criamos uma terceira tartaruga (mensagem) só para exibir o texto.

Passo 6: Executando o programa

Por fim, chamamos a função main() apenas se o arquivo for executado diretamente.

				
					if __name__ == '__main__':
    main()

				
			

Resultado Final

Ao executar o código, você verá:

  • Duas tartarugas (vermelha e azul) largando da esquerda.

  • Uma linha de chegada quadriculada à direita.

  • As tartarugas se movendo até que uma vença.

  • Uma mensagem em verde indicando o vencedor.

Caso o Python ainda não esteja instalado em seu dispositivo, clique no botão abaixo para realizar a instalação.

Posts Similares

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *