Neste post iremos dar continuidade com o nosso aprendizado sobre a linguagem Python, onde iremos aprender a desenvolver nossos primeiros algoritmos (programas), com uma abordagem passo a passo e explicativa.
Se você que está lendo esse post ainda não sabe muitos detalhes sobre Python, escrevi um post com uma introdução inicial à linguagem há um tempo atrás (falando sobre a história dela, instalação e configuração etc.), que recomendo a leitura. Basta clicar no link abaixo:
Conhecendo a sintaxe e as funções básicas da linguagem Python
Para aqueles que leram o primeiro post que escrevi sobre Python aprendemos, rapidamente, um pouco sobre a linguagem (em relação a sintaxe e funções). Irei reforçar aqui alguns tópicos vistos anteriormente para iniciarmos a construção dos nossos primeiros programas.
Precisamos saber que o Python nada mais é do que uma linguagem de programação, onde através dela escrevemos comandos obedecendo uma “regra sintática” (que precisa ser seguida) para que um algoritmo (ou “programa”) possa ser executado.
O ambiente de programação onde escrevemos o nosso código em Python (chamado “IDLE”) possui um “Interpretador” que executa diretamente (e sequencialmente), cada comando escrito, um após o outro, onde acompanhamos o resultado em um console de saída.
Basicamente nesse ambiente basta escrever os comandos e acompanhar o resultado produzido por eles (logo após a sua escrita).
O 1º comando básico: print
Quem inicia programação em uma linguagem, a primeira coisa que aprende é mostrar uma mensagem na tela, e aqui não será diferente.
No Python a função responsável por isso se chama print, onde através dela podemos exibir informações na tela (seja uma mensagem de texto, dados armazenados em uma variável etc.).
E como toda função de uma linguagem, o print possui a sua sintaxe, que é mostrada abaixo:
print(mensagem ou expressão)
Vamos abrir agora o nosso ambiente de programação Python IDLE (se você não tem ele instalado em sua máquina, leia o meu primeiro post onde lá eu mostro a sua instalação).
Gostaria de mostrar na tela a mensagem “Estou aprendendo Python pela primeira vez” usando o print, logo basta digitar o seguinte comando abaixo e em seguida pressionar [ENTER].
print("Estou aprendendo Python pela primeira vez")
Podemos observar que a execução e instantânea (logo após a sua escrita).
Observações rápidas sobre a linguagem
A linguagem Python é case-sensitive (que é um termo usado para designar que uma linguagem diferencia letras maiúsculas das minúsculas). Observe que o comando print foi escrito todo em minúsculo, e ele deve ser escrito dessa forma. Se você escrever qualquer letra do comando em maiúsculo teremos um erro. Veja alguns exemplos:
Print("Estou aprendendo Python pela primeira vez") #errado, inicial em maiúscula
PRINT("Estou aprendendo Python pela primeira vez") #errado, TUDO em maiúsculo
A linguagem deve ser escrita obedecendo uma sintaxe, ou seja, se escrever um comando de forma errada (como por exemplo esquecer de abrir/fechar os parênteses ou aspas) uma mensagem será exibida. Vejamos alguns exemplos de comandos escritos ERRADOS:
#errado, mensagem deve estar entre aspas “ ”
print(Estou aprendendo Python pela primeira vez)
#errado, esqueceu de fechar o parêntese
print("Estou aprendendo Python pela primeira vez"
#errado, esqueceu de fechar a mensagem com aspas ”
print("Estou aprendendo Python pela primeira vez)
Escrevendo um programa (script) em Python
Quando criamos um programa (script) em Python mais completo, é interessante escrevemos os comandos em um arquivo (e não executar o comando após ele ser escrito, como fizemos agora).
Vamos criar um novo arquivo (pressionando CTRL + N) e vamos escrever os seguintes comandos um embaixo do outro:
print("Olá")
print("Estou aprendendo linguagem Python")
print("Aqui no blog LucianoDEV.com.br")
Agora vamos salvar o arquivo (CTRL + S) com o nome “PrimeiroPrograma.py”, conforme podemos ver abaixo:
Vamos acompanhar agora a execução dessas três linhas de comandos (usando print), bastando pressionar a tecla F5:
Experimente agora, da forma como foi explicado, criar um novo arquivo exibindo na tela algumas mensagens com o comando print, conforme podemos ver uma demonstração abaixo:
[wbcr_html_snippet id=”772″ title=”Anúncio Article”]
Variáveis e Tipos de Dados
Até agora escrevemos códigos em linguagem Python limitados somente para exibir mensagens na tela, mas sabemos que um programa em Python (ou qualquer outra linguagem) não faz somente isso.
Uma das operações mais comuns que um programa também faz e ler, processar e exibir dados e informações armazenados em memória. Vamos trabalhar aqui agora no Python com o que chamamos de variáveis, que consiste em posições (espaços) disponíveis na memória do nosso computador, que pode armazenar dados.
Cada linguagem de programação possui seu conjunto de comandos para criar variáveis (espaços na memória), e o Python consegue fazer isso de uma maneira bem simples e prática em relação as outras linguagens.
Basicamente uma variável possui um nome qualquer (que não pode ser escrito de qualquer forma, você vai entender melhor logo mais), e essa variável representará um espaço que irá receber um valor qualquer que será armazenado.
Basicamente um valor é atribuído para uma variável usando a seguinte sintaxe abaixo:
<variável> = <valor>
No caso o “=” (igual) representa o comando atribuição, que irá pegar a expressão <valor> e armazenará na <variável> em memória.
Exemplo: Desejo armazenar o número 10 na variável chama nota. Como fazer isso no Python? Dessa maneira:
nota = 10
OBS.: A variável pode ter um nome qualquer que você deseja, desde que o nome se refira ao que você quer armazenar (uma variável “nome” para qualquer um nome de uma pessoa).
Nomes de variáveis não podem:
- Iniciar com números
- Possuir espaços em branco
- Possui o mesmo nome de comando já existente da linguagem
- Evitar o uso de caracteres acentuados e símbolos como $, & etc.
#Errado, nome de variável não pode iniciar com número
1nota = 10
#Errado, nome de variável não pode ter espaço
nome do aluno = "Luciano"
#Neste caso use o “_” para simular o espaço
nome_do_aluno = "Luciano"
#Errado, nome de variável não pode ser o mesmo de comando
print = "Imprimir"
Vejamos alguns exemplos abaixo do uso de variáveis. Crie um arquivo em branco e escreva o seguinte conjunto de comandos abaixo:
nome = "Luciano"
idade = 27
media_final = 9.5
linguagens_que_domina = ["PHP", "Python", "Javascript", "C#"]
print("Nome: ", nome)
print("Idade: ", idade)
print("Média final: ", media_final)
print("Linguagens que domina:", linguagens_que_domina)
Após escrever o código acima salve o arquivo e, em seguida, execute e acompanhe o resultado:
[wbcr_html_snippet id=”772″ title=”Anúncio Article”]
Explicação do código (Passo a passo)
A primeira linha cria uma variável chamada nome (que vai representar um espaço na memória), onde iremos armazenar um nome qualquer (e esse nome, pelo fato de ser texto, deve obrigatoriamente estar entre aspas):
nome = "Luciano"
A segunda linha cria uma variável chamada idade onde iremos armazenar uma idade qualquer (como idade é um número inteiro, não precisa estar entre aspas):
idade = 27
A terceira linha cria uma variável chamada media_final onde iremos armazenar uma média (como média final é um número real, não precisa estar entre aspas):
media_final = 9.5
A quarta linha cria uma variável chamada linguagens_que_domina onde iremos armazenar o conjunto de linguagens que o usuário domina (observe que nela armazenamos quatro valores do tipo texto entre [ e ], separados por “,”. Essa estrutura é chamada de vetor ou array.):
linguagens_que_domina = ["PHP", "Python", "Javascript", "C#"]
Nas instruções a seguir exibimos várias mensagens (usando o print), onde em cada uma exibimos, além do texto, o conteúdo da variável, que obrigatoriamente deve estar separado do texto (,) e fora das aspas.
print("Nome: ", nome)
print("Idade: ", idade)
print("Média final: ", media_final)
print("Linguagens que domina: ", linguagens_que_domina)
Usando o comando input
Aprendemos até aqui a trabalharmos com variáveis atribuindo um valor fixo e direto, definido no código, mas e se precisarmos informar esse valor durante a execução do programa? É aí que entra o uso do comando input (Entrada de dados):
Esse comando já foi mencionado no post que escrevi anteriormente sobre Python, mas aqui irei reforçar aqui o seu uso. Basicamente o que esse comando faz e efetuar a leitura dos dados via teclado, e após a leitura atribuir o valor lido para uma variável. Vejamos a sintaxe abaixo:
<variável> = input(<mensagem de entrada>)
O input, além de efetuar a leitura dos dados e atribuir para a variável, possui a mesma característica do print, que é exibir uma mensagem na tela, cujo objetivo e informar que algum dado precisa ser digitado pelo usuário.
Vamos lá, crie um novo arquivo no ambiente e em seguida vamos digitar o seguinte código abaixo:
print("Prezado usuário, precisamos que você informe os seguintes dados abaixo:")
print("---------------------------")
nome = input("Digite seu nome: ")
idade = input("Digite a sua idade: ")
print("Seu nome é ", nome, " e sua idade é: ", idade)
Salve o arquivo e em seguida execute o programa. Vejamos o exemplo de sua execução abaixo:
[wbcr_html_snippet id=”772″ title=”Anúncio Article”]
Explicação do código – Passo a Passo
Irei focar a explicação somente dos comandos input. Observe que no primeiro input (leitura do nome) exibimos uma mensagem: “Digite seu nome: “. Após a exibição o que acontece, ocorre uma pausa no programa, onde ele aguarda que você digite um nome e em seguida pressione [ENTER], para que o valor seja atribuído em seguida no variável nome.
nome = input("Digite seu nome: ")
De forma similar, é o que acontece com a instrução seguinte, onde lemos do teclado o valor da idade.
idade = input("Digite a sua idade: ")
Usando comentários #
Um recurso muito útil, e recomendado quando seu programa possui uma quantidade muito grande de instruções é o uso do comentário, que permite você escrever livremente sobre o código, com o objetivo de comentar se um comando ou bloco de instruções, para auxiliar o programador no entendimento da execução.
Todo comentário inicia com # seguido do que você quer escrever de forma livre. Veja um exemplo:
#Isso é um comentário
#Isso aqui é um outro comentário
Poderíamos usar esse comentário no programa que acabamos de escrever, deixando ele mais explicado dessa forma:
#Aqui mostro uma mensagem de solicitação dos dados
print("Prezado usuário, precisamos que você informe os seguintes dados abaixo:")
print("---------------------------")
#Vou efetuar a leitura do nome do usuário
nome = input("Digite seu nome: ")
#Agora irei efetuar a leitura de sua idade
idade = input("Digite a sua idade: ")
#E, para finalizar, mostrarei na tela o nome e idade lidos com input
print("Seu nome é ", nome, " e sua idade é: ", idade)
OBS.: O comentário simplesmente auxiliar o programador no entendimento do código, não influenciando na execução do programa (onde ocorre o comentário #, o Python simplesmente ignora e avança para a próxima instrução válida a ser executada).
Mais um programa para finalizar
Vamos fazer aqui um novo programa em Python para efetuar a leitura de um salário bruto do funcionário e ao final calcular o INSS (8% do salário), Vale Transporte (6% do salário) e, por último o salário líquido (salário bruto – inss – vale transporte). No final deveremos mostrar na tela o salário líquido calculado:
Crie um novo arquivo no ambiente e em seguida digite o seguinte código abaixo:
salario_bruto = float(input("Digite o salário bruto do funcionário: "))
inss = salario_bruto * 0.08
vale_transporte = salario_bruto * 0.06
salario_liquido = salario_bruto - vale_transporte - inss
print("Vale transporte: ", vale_transporte)
print("INSS: ", inss)
print("Salário líquido: ", salario_liquido)
Salve e em seguida execute o programa. Veja uma demonstração:
Comentando alguns trechos de código
Observe que o comando input deste programa desta dentro de uma outra função chamada float:
salario_bruto = float(input("Digite o salário bruto do funcionário: "))
A razão disso é que vamos trabalhar com cálculos numéricos, e o que é digitado dentro do input é retornado como texto (mesmo que seja um número), logo o comando float converte o retorno do input que está como texto em um número real.
As porcentagens de cálculo do INSS e VALE TRANSPORTE não podem ser feitas usando o sinal do %, logo usamos um valor equivalente e compatível com a sintaxe da linguagem (8% = 0.08 e 6% = 0.06), logo:
inss = salario_bruto * 0.08
vale_transporte = salario_bruto * 0.06
Outro detalhe: A parte fracionária de um número real é separada por “.” E não “,”, logo quando informar um salário bruto com centavos, coloque ponto no lugar de vírgula, caso contrário teremos um erro.
Outro detalhe é que a saída do resultado do salário está como um número fracionário (o que, na prática, está correto), porém vamos formatar a saída do valor como monetário, da seguinte forma:
Antes da primeira linha de código do nosso programa, insira as seguintes instruções:
#importa uma biblioteca chamada locale
import locale
#define a localização para formatação da moeda, português Brasil.
locale.setlocale(locale.LC_ALL, 'pt_BR.UTF-8')
Substitua as três últimas instruções do print pelas seguintes abaixo:
#Exibe os valores no formato monetário
print("Vale transporte: ", locale.currency(vale_transporte))
print("INSS: ", locale.currency(inss))
print("Salário líquido: ", locale.currency(salario_liquido))
Agora execute mais uma vez o programa e confira o resultado:
[wbcr_html_snippet id=”772″ title=”Anúncio Article”]
Considerações finais
E aí, gostou de desenvolver seus primeiros programas em linguagem Python? Se gostou ou quer de fazer qualquer observação sobre esse (ou outros posts sobre Python) deixe seu comentário.
Em Breve estarei escrevendo mais posts sobre programação em Python (e, futuramente, um E-BOOK sobre a linguagem será lançado).
Me siga nas redes sociais:
Instagram: @lucianodevoficial
Facebook: @lucianodevoficial
Um forte abraço e até a próxima
Gostei !!
Texto bom e exemplos práticos.
Fiquei interessada em aprender mais