Menu

13 Projetos Fáceis em Python para Ganhar Confiança

Coddy Team

Coddy Team

26 de junho de 2026 · 10 min de leitura

Você termina o tutorial. Digita cada linha, executa cada exemplo, vê tudo funcionar perfeitamente. Aí, você abre um editor em branco para criar algo próprio — e não vem nada. Nem uma única ideia.

Quase todo iniciante cai na armadilha dos tutoriais (geralmente logo após o primeiro curso de Python). Você pode passar o dia lendo sobre loops for, mas no momento em que ninguém te diz o que digitar, seu cérebro trava.

Saber como é a cara de um código e escrevê-lo por conta própria são duas habilidades totalmente diferentes. O caminho para ir de uma à outra é construir coisas. Sozinho.

E não, não precisa ser nada útil. Você não está lançando um aplicativo no mercado ou contribuindo para projetos de código aberto. Você só precisa de programas pequenos e bobos que funcionem — um atrás do outro — até seu cérebro parar de travar.

É para isso que serve este post. Abaixo estão 13 projetos fáceis em Python, cada um podendo ser finalizado em algo entre 10 minutos e uma hora. Cada um ensina uma ou duas coisas, nada mais. E cada um termina com um arquivo que roda na sua máquina, escrito por você.

Ainda não se sente pronto para construir? Não se preocupe! Toda grande jornada começa com os fundamentos. Aprenda os conceitos básicos de computação e construa uma base sólida antes de dar o próximo passo.

Por que construir em vez de apenas assistir a tutoriais?

Porque os tutoriais dão a sensação de aprendizado, mas eles pensam por você. Construir força você a decidir. Você precisa dar nome às variáveis, escolher o loop certo e descobrir por que seu código exibiu None em vez do número que você queria.

Projetos pequenos também resolvem o problema da falta de motivação. Um projeto de duas semanas parece incrível, até você empacar e nunca mais voltar a ele. Já um projeto de 30 minutos fica pronto hoje. Você ganha um arquivo funcionando e uma pequena vitória — e é essa vitória que te faz abrir o editor novamente amanhã.

Projetos fáceis em Python para aumentar sua confiança.webp

1. Jogo de Adivinhação de Números

O clássico. O computador escolhe um número entre 1 e 100, você tenta adivinhar, e ele diz se o palpite foi "muito alto" ou "muito baixo" até você acertar. O primeiro programa real de quase todo programador, e por um bom motivo.

import random

secret = random.randint(1, 100)
guesses = 0

while True:
 guess = int(input("Guess a number (1-100): "))
 guesses += 1
 if guess < secret:
 print("Too low")
 elif guess > secret:
 print("Too high")
 else:
 print(f"Got it in {guesses} guesses")
 break

O que você aprende: loops while, condicionais, o módulo random e como converter uma entrada (input) em número. Assim que funcionar, adicione um limite máximo de tentativas para que o jogo termine se você não acertar a tempo.

2. Gerador de Mad Libs

Peça ao usuário algumas palavras — um substantivo, um verbo, um adjetivo —, insira-as em uma frase engraçada e exiba o resultado. Dez minutos do início ao fim.

noun = input("Noun: ")
verb = input("Verb: ")
adjective = input("Adjective: ")
place = input("A place: ")

story = f"Yesterday I went to the {place} and saw a {adjective} {noun} that started to {verb}."
print(story)

O que você aprende: f-strings, receber múltiplas entradas em sequência e construir uma string a partir de variáveis. É fácil de expandir depois com histórias mais longas ou uma lista de modelos escolhidos aleatoriamente.

3. Simulador de Dado

Role um dado. Role dois. Role um dado de 20 lados para a noite de jogos. Duas linhas de lógica e o que mais você quiser colocar em volta delas.

import random

def roll(sides=6, count=1):
 return [random.randint(1, sides) for _ in range(count)]

print(roll(6, 2)) # rolls two six-sided dice
print(roll(20)) # rolls one d20

O que você aprende: funções com valores padrão, list comprehensions e como chamar a mesma função com entradas diferentes. Quando estiver funcionando, adicione um menu simples para o usuário escolher o número de lados e a quantidade de dados ao rodar o programa.

4. Calculadora Simples

Somar, subtrair, multiplicar, dividir. Dois números, um operador. Sim, calculadoras já existem. Esse não é o ponto. O objetivo é conectar as peças por conta própria e perceber o que você esqueceu na primeira tentativa.

def calc(a, b, op):
 if op == "+": return a + b
 if op == "-": return a - b
 if op == "*": return a * b
 if op == "/":
 if b == 0:
 return "Can't divide by zero"
 return a / b

a = float(input("First number: "))
op = input("Operator (+, -, *, /): ")
b = float(input("Second number: "))
print(calc(a, b, op))

O que você aprende: escrever uma função, desvios condicionais com if e como lidar com aquele caso extremo chato (divisão por zero). Quer um desafio? Adicione operações encadeadas.

5. Pedra, Papel e Tesoura

Você escolhe um, o computador escolhe outro e as regras decidem quem ganha. Excelente para praticar um loop de jogo simples e para se acostumar a usar um dicionário como tabela de consulta.

import random

options = ["rock", "paper", "scissors"]
wins_against = {"rock": "scissors", "paper": "rock", "scissors": "paper"}

you = input("Pick rock, paper, or scissors: ").lower()
cpu = random.choice(options)
print(f"Computer picked {cpu}.")

if you == cpu:
 print("Tie")
elif wins_against[you] == cpu:
 print("You win")
else:
 print("Computer wins")

O que você aprende: dicionários para buscas rápidas, random.choice e comparação de strings. Envolva tudo em um loop while e salve a pontuação das rodadas — pronto, você criou um joguinho em uma tarde.

6. Gerador de Senhas

Crie uma senha aleatória de N caracteres usando letras, números e símbolos. Útil, fácil e feito em 15 minutos. O tipo de ferramenta que você realmente pode acabar usando no dia a dia.

import random
import string

def make_password(length=12):
 pool = string.ascii_letters + string.digits + string.punctuation
 return "".join(random.choice(pool) for _ in range(length))

print(make_password(16))

O que você aprende: o módulo string, como juntar caracteres em uma única string e como extrair caracteres aleatórios de um grupo. Adicione uma opção para ignorar símbolos, ideal para sistemas que não aceitam pontuação — e existem mais sistemas assim do que você imagina.

7. Lista de Tarefas no Terminal

Um menu simples de adicionar / listar / remover, direto no terminal. Sem banco de dados, sem configurações complexas, apenas uma lista em Python que existe até você fechar o programa. É o suficiente para aprender bastante.

todos = []

while True:
 cmd = input("Command (add/list/remove/quit): ")
 if cmd == "add":
 todos.append(input("Task: "))
 elif cmd == "list":
 for i, t in enumerate(todos, 1):
 print(f"{i}. {t}")
 elif cmd == "remove":
 idx = int(input("Index to remove: ")) - 1
 if 0 <= idx < len(todos):
 todos.pop(idx)
 elif cmd == "quit":
 break

O que você aprende: um programa baseado em menus, alteração de listas, a função enumerate e o truque para começar a numeração a partir do 1. Na próxima versão, salve suas tarefas em um arquivo de texto para que elas não sumam ao fechar o programa. É aí que ele começa a parecer um aplicativo de verdade.

Perdendo o ritmo entre um projeto e outro?

O Coddy transforma a prática de Python em um hábito diário com ofensivas gamificadas, XP e lições curtas que fazem você abrir o aplicativo mesmo quando a motivação cai.

Comece com Python Agora

8. Contador de Palavras e Caracteres

Cole um texto e receba a contagem de palavras, de caracteres e a palavra mais comum. Muito útil quando você está escrevendo com limites rígidos de palavras — e existem muitos desses limites por aí quando você começa a prestar atenção.

from collections import Counter

text = input("Paste your text: ")
words = text.split()
chars = len(text)
most_common = Counter(words).most_common(1)

print(f"Words: {len(words)}")
print(f"Characters: {chars}")
print(f"Most common word: {most_common[0][0]} ({most_common[0][1]} times)")

O que você aprende: o módulo collections, o método .split() e como ler os valores retornados pelo Counter. Tente ignorar palavras curtas (como artigos e preposições) para obter resultados melhores — caso contrário, sua palavra mais comum sempre será algo genérico que não diz nada sobre o texto.

9. Calculadora de Gorjetas

Total da conta, porcentagem da gorjeta, divisão entre as pessoas. O tipo de ferramenta simples que você realmente vai usar daqui a alguns anos, muito depois de ter esquecido que foi você quem a escreveu.

bill = float(input("Bill total: "))
tip_pct = float(input("Tip percentage (e.g., 18): "))
people = int(input("How many people: "))

tip = bill * (tip_pct / 100)
total = bill + tip
per_person = total / people

print(f"Tip: {tip:.2f}")
print(f"Total: {total:.2f}")
print(f"Per person: {per_person:.2f}")

O que você aprende: operadores matemáticos, conversão de entradas em números e arredondamento para duas casas decimais com :.2f. Expanda o projeto arredondando o valor por pessoa para cima, para que ninguém na mesa saia prejudicado.

10. Temporizador Regressivo

Você digita quantos segundos deseja, e o programa faz a contagem regressiva até zero. Pequeno, satisfatório e muito útil para cronometrar pausas ou ciclos de Pomodoro depois de pronto.

import time

seconds = int(input("Seconds: "))

while seconds >= 0:
 mins, secs = divmod(seconds, 60)
 print(f"{mins:02d}:{secs:02d}", end="\r")
 time.sleep(1)
 seconds -= 1

print("Time's up ")

O que você aprende: o módulo time, a função divmod para dividir números em minutos e segundos, e o truque do \r para atualizar a mesma linha no terminal. Esse end="\r" é o que faz o temporizador parecer real, em vez de apenas despejar uma parede de texto no seu terminal.

11. Gerador de Frases Aleatórias

Uma lista de frases — motivacionais, engraçadas, sobre programação, o que você preferir — e o programa exibe uma delas aleatoriamente ao ser executado. Parece fácil demais? Faça assim mesmo.

import random

quotes = [
 "The only way to learn a new programming language is by writing programs in it.",
 "Programs must be written for people to read, and only incidentally for machines to execute.",
 "Premature optimization is the root of all evil.",
 "Simplicity is the soul of efficiency.",
 "Code is like humor. When you have to explain it, it's bad.",
]

print(random.choice(quotes))

O que você aprende: conceitos básicos de listas, random.choice e o menor programa útil de toda a linguagem. Configure-o para rodar na inicialização do seu terminal para ver uma frase nova toda vez que abrir o shell — o tipo de detalhe simples que, de mansinho, torna a programação muito mais divertida.

12. Jogo da Forca (Simplificado)

Escolha uma palavra secreta, mostre os traços correspondentes, deixe o usuário adivinhar as letras e encerre após seis erros. Um pouco mais complexo que os outros desta lista, mas ainda perfeitamente realizável em cerca de uma hora se você mantiver a simplicidade.

import random

words = ["python", "syntax", "variable", "function", "module"]
secret = random.choice(words)
guessed = set()
wrong = 0

while wrong < 6:
 display = "".join(c if c in guessed else "_" for c in secret)
 print(display)
 if "_" not in display:
 print("You won")
 break
 letter = input("Guess a letter: ").lower()
 if letter in secret:
 guessed.add(letter)
 else:
 wrong += 1
 print(f"Wrong. {6 - wrong} tries left.")
else:
 print(f"You lost. The word was {secret}.")

O que você aprende: conjuntos (sets), construção de strings com condições internas e a estrutura menos conhecida while-else (onde o else roda apenas se o loop terminar sem um break). Cansou de usar sempre as mesmas cinco palavras? Faça o programa lê-las de um arquivo. (E você vai cansar delas. Bem rápido.)

13. Conversor de Unidades

Converta entre unidades comuns: Celsius para Fahrenheit, quilômetros para milhas, quilogramas para libras. Prático, rápido de finalizar e o tipo de ferramenta que você vai se pegar usando mais tarde.

def c_to_f(c):
 return c * 9/5 + 32

def km_to_mi(km):
 return km * 0.621371

def kg_to_lb(kg):
 return kg * 2.20462

print("1. Celsius to Fahrenheit")
print("2. Kilometers to miles")
print("3. Kilograms to pounds")

choice = input("Pick a converter: ")
value = float(input("Value: "))

if choice == "1":
 print(c_to_f(value))
elif choice == "2":
 print(km_to_mi(value))
elif choice == "3":
 print(kg_to_lb(value))

O que você aprende: várias funções pequenas em um único arquivo, um menu básico e desvios condicionais com base no que o usuário digita. Assim que as conversões diretas funcionarem, adicione as inversas (F para C, milhas para km). Mesma ideia, metade do esforço, o dobro de prática.

Como fixar o aprendizado desses projetos

Criar um projeto é apenas um momento isolado. Criar um por dia durante duas semanas é um hábito. E a diferença entre as pessoas que superam o nível iniciante no Python e as que não conseguem não é talento ou tempo. É a constância na prática.

Algumas dicas que ajudam, mais ou menos em ordem de importância:

  • Digite o código, não copie e cole! É chato e repetitivo, com certeza. Mas também é a única maneira de fazer com que os padrões fiquem gravados na sua memória muscular, e não apenas nos seus olhos. A primeira vez que você digita import random de cabeça, algo faz sentido.

  • Quebre o código de propósito. Assim que ele funcionar, delete uma linha, comente uma função ou mude o nome de uma variável e veja o que acontece. Consertar o erro ensina muito mais do que a própria construção do código. (Isso só fica claro depois que você tenta pela primeira vez.)

  • Construa o mesmo projeto duas vezes. Uma semana depois, tente recriar o jogo de adivinhação do zero. A segunda vez mostra o que você realmente absorveu — o que pode ser menos do que você esperava. E tudo bem!

  • Adicione um recurso extra. Pegue qualquer projeto acima e acrescente uma pequena funcionalidade. Salve a lista de tarefas em um arquivo. Faça o simulador de dados exibir os resultados um por um. É nessa parte extra que o verdadeiro aprendizado acontece, porque ninguém escreveu um tutorial ensinando exatamente como fazer a sua versão.

Se manter a prática diária é a parte em que você sempre falha, esse é exatamente o motivo pelo qual o Coddy existe. Lições curtas de Python de cinco minutos, um sistema de ofensivas que te motiva quando a vontade diminui e dicas de IA do Bugsy direto na lição quando você empaca.

Todos os cursos são gratuitos para começar, incluindo o de Python. Nós o criamos pensando exatamente no momento em que você está agora: cansado de tutoriais, ainda inseguro e procurando por treinos práticos que não consumam toda a sua noite.

O que você deve construir a seguir?

Quando os projetos acima começarem a parecer fáceis demais, significa que você já cruzou a linha que estava tentando cruzar. Excelente trabalho! O próximo passo são projetos de nível intermediário — aqueles que utilizam uma ou duas bibliotecas e um pouco de entrada/saída de arquivos ou rede. Algumas ideias para subir de nível:

  • Um aplicativo de clima usando a biblioteca requests e uma API de clima gratuita
  • Um web scraper com BeautifulSoup que coleta as principais notícias de um site que você costuma ler
  • Um jogo de aventura em texto com algumas salas e uma lista de inventário
  • Um temporizador Pomodoro que registra suas sessões em um arquivo CSV
  • Um aplicativo Flask simples que exibe uma página única com uma piada aleatória

Nenhum deles é avançado. Eles apenas combinam duas ou três coisas que você já sabe com um módulo novo. Escolha o que parecer mais divertido, pois esse será o que você realmente vai terminar.

Os tutoriais perdem o sentido no momento em que deixam você sozinho e exigem que pense por si mesmo. Projetos, mesmo os mais simples, forçam você a raciocinar. Faça o suficiente deles e a armadilha dos tutoriais deixará de ser um problema.

Preso na armadilha dos tutoriais?

O Coddy tira você do papel de espectador passivo e te coloca para programar de verdade com lições de Python de cinco minutos, ofensivas diárias e o Bugsy, um assistente de IA que dá dicas em vez de estragar a resposta.

Comece a Programar Agora

About the Author

Coddy Team

Coddy Team

Editorial Team

Frequently Asked Questions

Qual é o projeto Python mais fácil para um iniciante?

O jogo de adivinhação de números é a resposta padrão. Curto, usa inputs, loops e condicionais em um único programa, e parece um jogo de verdade quando roda. A maioria das pessoas consegue terminá-lo em 20 minutos, mesmo que tenham acabado de aprender o que um loop while faz.

Quanto tempo os projetos fáceis de Python devem levar?

De dez minutos a uma hora. Se você estiver gastando três horas em um, ou ele é difícil demais para o seu nível atual, ou você caiu em uma espiral de debugging da qual vale a pena sair. Escolha um menor, termine-o e depois volte.

Preciso instalar alguma coisa para fazer esses projetos?

Sim, se você quiser executá-los localmente; não, se não quiser. Instalar o Python a partir do python.org leva cerca de cinco minutos. Ou pule a instalação totalmente e execute-os em um playground no navegador, como o que existe dentro do Coddy, que é a opção sem configuração.

Esses projetos em Python são bons para o currículo?

Por si sós, não. Um projeto de currículo geralmente precisa de mais profundidade, como um pequeno web app, um script que você usou para automatizar algo real no trabalho ou uma contribuição para um projeto open-source. Os 13 projetos aqui são degraus para construir confiança, não peças de portfólio. Eles preparam você para construir as coisas dignas de currículo mais tarde.

Quais conceitos de Python eu vou aprender com esses projetos?

Ao longo dos 13, você vai mexer com variáveis, entrada e saída, condicionais, loops, funções, listas, dicionários, sets, o módulo random, o módulo time, f-strings, list comprehensions e alguns módulos da biblioteca padrão como collections e string. Essa é uma parte prática e sólida da linguagem.

E se o meu código não funcionar?

Leia a mensagem de erro. A maioria dos erros de iniciantes diz quase exatamente o que deu errado, geralmente na linha logo acima de onde você começou a entrar em pânico. Pesquise a mensagem de erro no Google, peça para um assistente de IA como o Bugsy explicá-la ou cole-a em um fórum. O debugging é uma habilidade que se desenvolve da mesma forma que a programação: com a prática.

Posso fazer esses projetos no celular?

Sim. O Python roda em ambientes de programação mobile, incluindo o aplicativo Coddy, que possui um playground de código integrado. Você não vai escrever softwares corporativos em uma tela do tamanho da sua mão, mas pequenos projetos de prática funcionam muito bem assim, e muitas pessoas praticam muito mais no celular do que praticariam em um notebook.

Qual é o próximo passo após os projetos fáceis de Python?

Projetos médios que combinam mais conceitos: um pequeno web scraper, um cliente de API, um aplicativo Flask ou Django que serve uma página, um script que processa arquivos em uma pasta. Qualquer coisa que traga uma nova biblioteca e se conecte a algo externo é um próximo passo útil. Escolha um que resolva um pequeno problema da sua própria vida. Esse é o que você vai terminar.

Coddy programming languages illustration

Aprenda a programar com o Coddy

COMEÇAR