A função input() do Python - Lendo dados do Teclado

Até o momento, em nosso Curso de Python, nossos scripts não tem interação nenhuma entre o Python e o usuário.
Eles simplesmente rodam do começo ao fim, sempre do mesmo jeito.

Mas não é isso que ocorre corriqueiramente nos programas que usamos.
Fornecemos dados (como textos, login, senhas), clicamos em coisas, recebemos dados da internet etc etc.

Leia também:

Neste tutorial de nosso curso, vamos te ensinar como começar a receber dados das pessoas que estão executando os programas, através da função input() do Python!



Como Receber Dados - Função input() do Python

O formato da função input é o seguinte:

variavel = input(string)

Só isso.
Seja lá o que a pessoa digitar, a informação ficará armazenada na variável 'variavel'. E o que será exibido na tela é a string (texto) 'string'.

Vamos ver na prática o uso da função input. Programe o seguinte código:
variavel=input('Digite algo: ')

O resultado dele vai ser:

Curso de Python online grátis
Prontinho.
Como fornecemos a string 'Digite algo: ' para a função input, foi exatamente isso que foi exibido na tela.

Em seguida, o interpretador Python simplesmente fica parado, esperando você digitar algo. Enquanto você não apertar enter, nada vai acontecer.

Quando você pressiona enter, ele continua.
No caso, nosso script serve apenas para armazenar o que digitamos na variável 'variavel', na forma de uma string.

Atenção: a função input armazena na forma string se tiver usando a versão recente do Python de número 3.x ok?

Se for versão antiga, ela vai transformar seu dado em string, inteiro ou float, dependendo do que você digitar.

Atualize seu Python! Use a versão mais nova!



Exercício com a função input() do Python

"Faça um programa que pergunte a idade do usuário, e a armazene em uma variável. Em seguida, pergunte o nome da pessoa e armazene esse dado em outra variável. Por fim, exiba uma mensagem de boas vindas ao curso Python Progressivo, dizendo nome e idade da pessoa".

Inicialmente, vamos armazenar a idade do usuário na variável 'idade', e usamos a função input para receber tal dado.

Depois, faremos o mesmo com o nome, armazenando na variável 'nome'.
Por fim, damos um print onde escrevemos uma mensagem de saudação e imprimimos também o nome e a idade da pessoa, que estão armazenadas nas variáveis 'nome' e 'idade', veja como ficou simples:
idade=input('Qual sua idade? ')
nome=input('Qual seu nome? ')

print('Olá, seu nome é ', nome, ' e tem ', idade, ' anos de idade! Seja bem vindo ao Curso Python Progressivo')

O resultado é o seguinte:



Note que digitamos o nome "Bruce Dickinson" entre aspas, isso é necessário se vocês estiver usando uma versão mais antiga do Python, se não usar, vai receber uma mensagem de erro.

Se estiver na versão mais recente (a que estou usando, no momento que escrevo este tutorial de nosso curso, é a 3.6), não precisa usar aspas, a função input passa tudo pra string.

Se quiser digitar uma string sem precisar de aspas, em versões mais antigas do Python, ao invés de input use raw_input

Pronto, finalmente você está se comunicando com o Python.
Ele espera, aguarda, fica quietinho e ansiosamente esperando que você forneça as ordens. Você que manda na p..rra toda ! Afinal, você é o programador, também conhecido como 'dono(a) do universo'.

Com grandes poderes, vem grandes responsabilidades.
Nos próximos tutoriais vamos criar uma calculadora em Python. Sinta o poder em suas mãos.


4 comentários:

  1. Pessoal alguem de voces pode me ajudar? Estou tentando fazer esse exercicio da idade e do nome mas esta dando erro no python.

    Eu uso debian 9, esta instalado o python 2.7.3 e o python 3.5.3. Estou compilando (python nomedoarquivo.py) e aparece a seguinte mensagem:

    Qual a sua idade? 45
    Qual o seu nome? ana
    Traceback (most recent call last):
    File "input.py", line 6, in
    nome=input('Qual o seu nome? ')
    File "", line 1, in
    NameError: name 'ana' is not defined

    pode ser o erro que voces alertaram, mas não estou conseguindo arrumar. Sera que é so instalando o python3.6? O 3.5 já não resolveria esse erro?

    Obrigada.

    ResponderExcluir
    Respostas
    1. Você tá tentando fazer algo ou alguma operação com uma variável 'ana' que não foi definida anteriormente.

      Excluir
    2. ana não é uma variavel, eu digito ana quando aparece a pergunta "Qual o seu nome", entao digito aperto enter e da esse erro.

      Excluir
    3. Ja descobri o erro aqui. Quando vou responder a pergunta no terminal sobre o nome, tenho que escrever o nome entre aspas, eu tava fazendo sem. Não tinha reparado bem ali no exemplo ("Bruce Dickson"). Mas é isso ai.

      Excluir