Semana 3 de 8
Entrada e interação
Os programas começam a escutar. Os estudantes usam input() para fazer uma pergunta ao jogador, esperar a resposta e usá-la no que o programa responde. No fim, eles têm um chatbot curto que responde ao que você digitar.
- Tempo estimado
- 50 a 60 minutos
- Projeto
- Minichatbot
A ideia
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.
O que você vai aprender
- Usar input() para obter uma resposta de quem está executando o programa.
- Guardar uma resposta em uma variável e usá-la depois.
- Explicar que o programa pausa em input() até a pessoa digitar algo.
- Consertar uma linha input() que está sem as aspas.
Palavras novas
- 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.
Projeto: Minichatbot
Edite o código inicial abaixo e clique em Executar para ver funcionar. Use Restaurar código inicial para voltar ao original quando quiser.
Execute seu programa para ver a saída.
Resultado esperado
Como posso te chamar? Alex
Prazer em conhecer, Alex.
Qual jogo você está curtindo agora? futebol
futebol? Boa escolha. Logo a gente vai construir um nosso.Minidesafio
Acrescente mais uma pergunta, talvez a cor ou o animal favorito, e use a resposta na fala do programa.
Desafio 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?
Código com erro
nome = input(Como posso te chamar? )Ver soluçãoOcultar solução
A mensagem é texto, então precisa de aspas:
nome = input("Como posso te chamar? ")Desafio extra
Pergunte o nome do jogador e o jogo favorito dele, depois imprima uma frase que use os dois, como: Alex está pronto para jogar futebol!
Reflita
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?
Notas para o professor
input() sempre devolve texto, mesmo quando a pessoa digita um número: isso fica importante na Semana 5, quando comparamos números e usamos int(). Fique de olho nas aspas faltando em volta da mensagem. Na área de trabalho, a mensagem e a resposta digitada aparecem no painel de saída, então a saída esperada mostra uma conversa de exemplo.
Vai conduzir esta aula? Veja o guia para professores e bibliotecários com o passo a passo, os erros mais comuns e uma atividade de reserva sem computador.
Terminou esta aula? Marque como concluída para desbloquear a próxima semana.