Folhas de atividades
Introdução à Programação em Python
Uma folha de atividades para imprimir por aula, para estudantes que trabalham no papel ou longe da tela. Use a opção de impressão do navegador para imprimir todas as folhas ou apenas uma página.
Introdução a Python · Folha de atividades 1 de 8
Nome: _______________ Data: __________
Semana 1: O que é Python?
Ideia principal
Código é uma lista de instruções, e o computador segue essa lista em ordem, sem adivinhar. print() é a primeira instrução que você vai aprender: ela mostra exatamente o texto que está entre as aspas. Mude as palavras entre aspas e a tela muda junto.
Vocabulário
- programa
- Um conjunto de instruções exatas que o computador segue, uma linha por vez.
- print()
- Um comando do Python que mostra na tela o texto que você colocar entre aspas.
- string
- Um trecho de texto entre aspas, como "Olá".
- saída
- O que o programa mostra na tela quando é executado.
- erro
- A mensagem que o Python mostra quando uma linha está escrita de um jeito que ele não consegue seguir.
Planeje o seu código
Projeto: Cartão de apresentação digital. Escreva, passo a passo, o que o seu programa deve fazer.
Pergunta de depuração
Esta linha deveria imprimir a palavra Olá, mas em vez disso trava o programa com um erro. Veja o que está faltando em volta da palavra Olá. Todo texto em Python precisa disso.
print(Olá)Escreva a correção:
Reflexão
O computador seguiu as suas linhas exatamente na ordem em que você escreveu. No jogo que você vai construir no fim deste curso, a ordem também vai importar. O que daria errado se um jogo imprimisse "Você venceu!" antes mesmo de o jogador jogar?
Introdução a Python · Folha de atividades 2 de 8
Nome: _______________ Data: __________
Semana 2: Variáveis e tipos de dados
Ideia principal
Uma variável é uma caixa com etiqueta: você coloca um valor dentro uma vez e depois usa o nome dela onde quiser esse valor. Texto vai entre aspas (uma string); números não. Com uma f-string você consegue colocar uma variável direto dentro de uma frase, então um programa pode cumprimentar o jogador pelo nome em vez de dizer sempre a mesma coisa.
Vocabulário
- variável
- Uma caixa com nome que guarda um valor para você usar depois.
- atribuir
- Colocar um valor dentro de uma variável usando o sinal =.
- inteiro
- Um número inteiro, sem vírgula decimal, como 10.
- f-string
- Uma frase que começa com f, em que tudo dentro de { } é preenchido a partir de uma variável.
Planeje o seu código
Projeto: Gerador de perfil. Escreva, passo a passo, o que o seu programa deve fazer.
Pergunta de depuração
Isto deveria imprimir Meu nome é Alex, mas imprime a palavra nome. O valor da variável não está sendo preenchido. O que precisa ir em volta de nome dentro de uma f-string?
nome = "Alex"
print(f"Meu nome é nome.")Escreva a correção:
Reflexão
Você mudou o que o programa diz só mudando uma variável. Por que isso é melhor do que digitar o nome do jogador de novo e de novo em cada linha?
Introdução a Python · Folha de atividades 3 de 8
Nome: _______________ Data: __________
Semana 3: Entrada e interação
Ideia principal
input() é como um programa escuta. Ele mostra uma mensagem, depois para e espera o jogador digitar e apertar Enter. A resposta é guardada em uma variável, então o programa pode usá-la no que fizer depois: o nome, o palpite, a escolha. Lembre-se: input() sempre devolve texto.
Vocabulário
- input()
- Um comando do Python que faz uma pergunta e espera a pessoa digitar uma resposta.
- prompt
- A mensagem que input() mostra para dizer ao usuário o que digitar.
- usuário
- A pessoa que usa o programa; em um jogo, o jogador.
Planeje o seu código
Projeto: Minichatbot. Escreva, passo a passo, o que o seu programa deve fazer.
Pergunta de depuração
Executar isto dá erro antes de a pergunta sequer aparecer. A mensagem dentro de input() é texto para a pessoa ler. Do que todo texto precisa em volta?
nome = input(Como posso te chamar? )Escreva a correção:
Reflexão
Na semana passada o seu programa dizia sempre a mesma coisa. Agora ele responde. O que você poderia perguntar ao jogador no começo de um jogo para ele sentir que o jogo é sobre ele?
Introdução a Python · Folha de atividades 4 de 8
Nome: _______________ Data: __________
Semana 4: Condicionais
Ideia principal
Uma condicional deixa o programa escolher. O Python checa uma condição, algo que é verdadeiro ou falso, e roda as linhas indentadas abaixo só se a condição for verdadeira. Com if, elif e else, um programa pode reagir de um jeito a uma resposta certa, de outro a uma resposta quase certa e de outro a uma errada. É assim que um jogo decide se você pontuou, venceu ou perdeu.
Vocabulário
- condição
- Uma pergunta com resposta verdadeira ou falsa, como resposta == "Terra".
- if
- Roda as linhas indentadas abaixo dele só quando a condição é verdadeira.
- elif
- Checa outra condição quando as de cima deram falso.
- else
- Roda quando nenhuma das condições acima foi verdadeira.
- ==
- Checa se dois valores são iguais (diferente de =, que guarda um valor).
Planeje o seu código
Projeto: Quiz de conhecimentos ou de personalidade. Escreva, passo a passo, o que o seu programa deve fazer.
Pergunta de depuração
O Python mostra um erro na linha do if. Um sinal de igual guarda um valor em uma variável. O que você usa quando quer checar se duas coisas são iguais?
resposta = input("Em qual planeta a gente vive? ")
if resposta = "Terra":
print("Isso mesmo!")Escreva a correção:
Reflexão
Seu programa agora reage de formas diferentes a respostas diferentes. No seu jogo final, qual é uma decisão que o programa vai precisar tomar, e o que deve acontecer em cada caso?
Introdução a Python · Folha de atividades 5 de 8
Nome: _______________ Data: __________
Semana 5: Laços
Ideia principal
Um laço repete o código para você não escrever cem vezes. Um laço while continua enquanto a condição for verdadeira: perfeito para um jogo que deve continuar perguntando até o jogador ganhar. Alguma coisa dentro do laço precisa tornar a condição falsa em algum momento, senão ele roda para sempre. Como input() devolve texto, usamos int() para transformar o palpite em um número que dá para comparar.
Vocabulário
- laço
- Código que se repete em vez de rodar uma vez só.
- while
- Repete as linhas abaixo dele enquanto a condição se mantiver verdadeira.
- int()
- Transforma um texto digitado como "7" no número 7 para você poder comparar.
- laço infinito
- Um laço que nunca para porque a condição dele nunca fica falsa.
Planeje o seu código
Projeto: Jogo de adivinhar o número. Escreva, passo a passo, o que o seu programa deve fazer.
Pergunta de depuração
Este jogo nunca acaba, nem quando o jogador digita 7. O segredo é o número 7, mas input() devolve o texto "7". Por que eles não são iguais, e o que transforma texto em número?
segredo = 7
palpite = 0
while palpite != segredo:
palpite = input("Chute um número de 1 a 10: ")Escreva a correção:
Reflexão
Um laço deixou você perguntar de novo e de novo sem se repetir. Qual parte do seu jogo final pode precisar repetir: os turnos, as perguntas, as rodadas?
Introdução a Python · Folha de atividades 6 de 8
Nome: _______________ Data: __________
Semana 6: Funções
Ideia principal
Uma função é uma receita reutilizável. Você escreve os passos uma vez depois de def e dá um nome a ela; a partir daí, roda todos esses passos só chamando o nome. Um parâmetro deixa você entregar à função informações diferentes a cada vez, então uma única função cumprimentar consegue receber qualquer jogador. Escrever uma função não a executa; chamá-la sim.
Vocabulário
- função
- Um bloco de código com nome que você pode rodar várias vezes chamando o nome dele.
- def
- A palavra-chave que cria uma nova função.
- parâmetro
- Uma entrada que a função recebe, listada dentro dos parênteses dela.
- chamar
- Executar uma função escrevendo o nome dela com parênteses, como cumprimentar("Alex").
Planeje o seu código
Projeto: Funções auxiliares de jogo. Escreva, passo a passo, o que o seu programa deve fazer.
Pergunta de depuração
Isto para com um erro sobre um argumento faltando. A função cumprimentar pede um jogador nos parênteses dela. Olhe a última linha: o que a chamada esqueceu de dar a ela?
def cumprimentar(jogador):
print(f"Bem-vindo, {jogador}!")
cumprimentar()Escreva a correção:
Reflexão
Você escreveu mostrar_pontos uma vez e usou duas. No seu jogo final, o que é algo que você vai fazer mais de uma vez e que poderia virar uma função?
Introdução a Python · Folha de atividades 7 de 8
Nome: _______________ Data: __________
Semana 7: Listas e aleatoriedade
Ideia principal
Uma lista guarda muitos valores em uma variável só, escrita entre colchetes. random.choice() enfia a mão em uma lista e puxa um item ao acaso, então o programa consegue surpreender o jogador. Para usar random, primeiro você o traz com import random lá em cima: a primeira vez que você precisa de uma ferramenta que não vem embutida. Listas mais aleatoriedade são o que faz um jogo parecer diferente cada vez que você joga.
Vocabulário
- lista
- Uma coleção ordenada de valores dentro de colchetes, como ["a", "b", "c"].
- item
- Um valor guardado em uma lista.
- import
- Traz ferramentas extras que o Python não carrega por padrão, como o módulo random.
- random.choice()
- Escolhe um item de uma lista ao acaso.
Planeje o seu código
Projeto: Jogo de aventura aleatório. Escreva, passo a passo, o que o seu programa deve fazer.
Pergunta de depuração
O Python diz que random não está definido. Este programa usa random.choice(), mas random é uma ferramenta que precisa ser trazida antes. Qual única linha vai lá no topo?
caminhos = ["uma floresta escura", "uma caverna silenciosa"]
caminho = random.choice(caminhos)
print(caminho)Escreva a correção:
Reflexão
Dois jogadores executam isto e recebem histórias diferentes. Por que isso deixa um jogo mais divertido de jogar mais de uma vez?
Introdução a Python · Folha de atividades 8 de 8
Nome: _______________ Data: __________
Semana 8: Construtor do jogo final
Ideia principal
Programas de verdade são construídos com pedaços pequenos que você já conhece, acrescentados um por vez. Comece com um plano e um esqueleto que roda, depois acrescente um recurso, teste, e só então acrescente o próximo. Um jogo pequeno que funciona é uma vitória de verdade, mais do que um grande que nunca roda.
Vocabulário
- plano
- Um esboço curto do que um programa deve fazer, escrito antes de programar.
- esqueleto
- Um pequeno programa que funciona e a partir do qual você começa a construir.
- testar
- Executar o seu programa com entradas diferentes para ver se ele funciona.
- bug
- Um erro no código que faz o programa fazer a coisa errada.
Planeje o seu código
Projeto: Crie o seu próprio minijogo em Python. Escreva, passo a passo, o que o seu programa deve fazer.
Pergunta de depuração
O Python aponta a linha do while com um erro de sintaxe. Toda linha que abre um bloco (if, while, def) termina com o mesmo símbolo pequeno. Olhe o fim daquela linha.
segredo = random.choice([1, 2, 3])
palpite = 0
while palpite != segredo
palpite = int(input("Escolha um número: "))Escreva a correção:
Reflexão
Você construiu um jogo com as oito ideias deste curso. Em qual ideia de qual semana você mais se apoiou, e por quê?