Skip to content
This page has been auto-translated and may contain errors.View in English

Aplicativo de estudo com flashcards

Zee Olá, então. Tenho a prova de sistemas de propulsão em seis semanas e aprendo muito melhor me testando. Você consegue criar um app de flashcards? Que carregue os cards de um arquivo, me mostre a frente, eu digito minha resposta e ele me diz se acertei. E quero que ele salve meu progresso para eu continuar de onde parei. Por favor 🙏

O que você vai construir

Deck: python-basics.json (12 cards)

Front: What does len() return for a string?
Your answer: the number of characters
Correct!

Front: What type does input() always return?
Your answer: int
Incorrect. The answer is: str

---
Session complete: 8/12 correct.
Progress saved.

Do que você vai precisar

Dicas

Comece pelos dados, não pelas classes. Um card são duas strings: frente e verso. Um baralho é uma lista de cards. Faça isso funcionar primeiro, depois envolva em classes se quiser a interface mais limpa.

JSON cuida do formato do arquivo. json.load() lê um arquivo para uma lista ou dicionário Python. json.dump() escreve de volta. O módulo json faz parte da biblioteca padrão.

Envolva o carregamento do arquivo em try/except. Na primeira vez que o script rodar, o arquivo de save não vai existir. Capturar FileNotFoundError te permite começar com um baralho vazio de forma elegante em vez de quebrar.

Indo além

Quando o loop principal de estudo estiver funcionando:

  • Repetir respostas erradas. Acompanhe quais cards o jogador errou e percorra-os novamente ao final da sessão.
  • Múltiplos baralhos. Liste os arquivos .json disponíveis em uma pasta e deixe o usuário escolher qual baralho estudar.
  • Repetição espaçada. Registre quantas vezes cada card foi respondido corretamente. Mostre com mais frequência os cards respondidos corretamente com menos frequência.