• Home »
  • Artigos »
  • Curso de programação em Python aula 7 – Leitura de dados do teclado

Curso de programação em Python aula 7 – Leitura de dados do teclado

Bem vindos á sétima aula do curso de programação em PythonEste artigo faz parte do curso de programação em Python do INFOmoz. Para acessar outras aulas do curso, por favor visite o índice do curso de programação em Python .

Objectivos da sétima aula do curso de programação em Python

  • Entrada de dados a partir do teclado
  • O primeiro programa com “sentido”

Depois de seis aulas “estáticas”, está na hora de começar a fazer os primeiros programas e jogos com alguma lógica.Para isso introduziremos hoje os métodos para entrada de dados(ou o método).Para lermos dados do teclado em Python usamos a função raw_input(), que lê os valores e armazena numa variável como String. Uma nota importante, é o facto de na versão 3000 do Python, a função raw_input() ser substituída pela função input(). Como eu uso as duas versões para este curso, então deve prestar atenção para as diferenças.Se pretendermos ler um inteiro ou um float temos de fazer a conversão depois de ler ou então podemos optar por uma conversão directa como vem a seguir:

>>> nome=raw_input("introduza o seu nome") # Lê uma string e #armazena na variável nomeTraceback (most recent call last):File "", line 1, innome=raw_input("introduza o seu nome") # Lê uma string e #armazena na variável nomeNameError: name 'raw_input' is not defined>>> #Viu o erro(Não se preocupe foi de propósito), foi para #mostrar que na versão 3.000 a funcão raw_input() passou a ser #input(),legal não acha? então vamos lá>>> nome=input("Introduza o seu nome: ")Introduza o seu nome: Elisio>>> print nomeSyntaxError: invalid syntax (, line 1)>>> # Outra mudança, a funcão print passou a ser #print (),olha os parentes>>> #então:>>> print (nome)Elisio>>> idade=int(input("introduza a idade"))introduza a idade18>>> print(nome+" "+idade)Traceback (most recent call last):File "", line 1, inprint(nome+" "+idade)TypeError: coercing to Unicode: need string or buffer, int found>>>#lembra que não podemos imprimir inteiros mas sim Strings>>> print(nome+" "+str(idade))Elisio 18>>> #ou então a conversão directa>>> idade2=input("introduza a sua idade ")introduza a sua idade 18>>> type(idade2)>>> # Ele leu como string agora e só  converter(podes fazer isso né???)

Agora que você já sabe como ler dados,deve estar aparecer alguma idéia meio genial na tua cabeça não?Se não apareceu ainda nenhuma idéia, então vou dar a minha: que tal um programinha que lê os dados do utilizador e imprime ele na tela? Gostou da idéia? Então vamos a isto. Abra uma nova janela e escreva o seguinte código:

#Programa completo V1.0#Curso de programação Python#Autor:Elisio Leonardonome=input("Introduza o seu nome")try:    idade=int(input("Introduza a sua idade"))except:    print("Valor nao valido para idade")print ("Ola senhor ",nome," daqui a dois anos o senhor tera ",(idade+2)," anos" )print("Pressione qualquer tecla para continuar")input()

Vamos á explicação do código:As linhas antecedidas por # são comentários(isso tenho certeza que já sabias)A primeira linha lê o nome do utilizador e armazena em nomeDepois vem o bloco try-except para ler a idade,isto porque corremos o risco do utilizador introduzir um valor não válido para idade(experimente fazer isso…)A linha a seguir imprime os dados(note a concatenação,assim torna-se possível imprimir um inteiro no 3.000)A ultima linha é para dar uma pausa no programa enquanto espera pela ordem do utilizador para terminar a execução.Tenta aumentar o programa incluindo outros dados.Imagine a seguinte situação ao correr o programa:

>>>Introduza o seu nomeElisio>>>Introduza a sua idade-18Ola senhor Elisio daqui a dois anos o senhor terá -16 anosPressione qualquer tecla para continuar

Hein??? O que aconteceu?É que os números negativos também fazem parte do conjunto dos números inteiros(Matemática básica né???), então para eliminar este problema iremos criar uma condição para a variável idade. Coisa para próxima aula.Por agora é tudo, se já sabes ler dados do teclado, e lembraste como utilizar algumas funções anteriores parabéns…Nos vemos na oitava aula do curso de programação em Python.

Receba nossas actualizações por email

Ver Campanhas anteriores.

(Visited 223 times, 1 visits today)
Share