Python - Guia prático para Iniciantes
  • Introdução
  • Você deveria aprender Python
  • Começando com Python
  • Desvios condicionais, fazendo seu programa tomar decisões
  • Valores None, Strings e Listas
  • Listas
  • Laços de Repetição - I
  • Laços de Repetição - II
  • Dicionários
  • Modularização de código com Funções
  • Expressões Lambda
  • Conclusão
  • Resolução dos exercícios
Powered by GitBook
On this page
  • Capítulo 2 - Começando com Python
  • Vamos praticar
  • Negação (not)
  • E (and)
  • Ou (or)
  • Vamos praticar

Was this helpful?

Começando com Python

Capítulo 2 - Começando com Python

Pois bem, vamos começar! Sem muita teoria agora, vamos por a mão na massa!

É importante ressaltar que para este livro estou utilizando a versão 3.6 do Python e o Visual Studio 2017 como IDE, você poderá escolher um ambiente diferente, mas recomendo utilizar o mesmo para evitar possíveis conflitos.

V vamos começar do começo. Bem do começo mesmo. Veremos variáveis, tipos e entrada e saída (IO).

Declarando Variáveis

A coisa mais básica que podemos encontrar em uma linguagem de programação são as variáveis. Mas o que são variáveis?

De forma simples, variáveis são os dados manipulados pelo seu programa. Estes dados são armazenados de modo temporário na memória de seu computador.

Antigamente era necessário ter muito mais cuidado ao utilizar variáveis demais, por conta da limitação da memória dos computadores, hoje em dia isso ainda precisa ser levado em consideração, mas temos muito mais liberdade do que antes.

Mas como sabemos as variáveis estão armazenadas na memória? -Bom, a memória do computador funciona parecido com nosso sistema social.

O que você faz quando precisa dizer para alguém onde você mora?

Você passa o endereço, certo?

A memória do computador faz a mesma coisa, cada espaço possível tem um endereço único, assim seu computador saberá onde encontrar a informação.

Imagine que o endereço são as coordenadas de latitude e longitude de um lugar, é bem específico e não se repete. Mas com que frequência você passa seu endereço no sistema de coordenadas?

Se você não for bem estranho, provavelmente usa o sistema de coordenadas muito pouco, certo? - Fazemos isso porque ele não é intuitivo para a maioria das pessoas, assim como os endereços de memória em seu computador.

Resolvemos este problema criando nomes para os países, cidades e ruas. Nessa mesma lógica, não utilizamos o sistema de endereçamento de memória do computador, ele é complicado demais e nem temos total controle de onde as coisas são armazenadas (e isso é ótimo).

Para acessar os dados em memória, utilizamos identificadores, ou seja, nomes. Uma variável no final das contas é uma composição de três coisas: identificador de acesso + dado armazenado + tipo.

Peraí, tipo? -É, tipo, mas por enquanto você não precisa se preocupar com isso.

Vamos para o código!

Como criar uma variável em Python? -É muito simples, basta dar um nome à ela e atribuir um valor utilizando o operador =, veja:

valor = 42

E é isso.

O interessante é que você pode realizar operações com estes valores também, veja:

valor = 42
resultado = 42 + 10

Neste caso, a informação armazenada na variável resultado será o resultado da expressão matemática.

Assim como em muitas outras linguagens, você pode utilizar uma variável como um valor. Ou seja, qualquer lugar em que você colocaria um valor, você pode substituir por uma variável.

valor = 42
resultado = valor + 10

Viram só, apesar do valor armazenado na varíavel resultado ser o mesmo do outro exemplo (52), agora estamos utilizando a variável para calcular.

Você pode exibir o resultado armazenado nas variáveis com a função print, veja:

valor = 42
resultado = valor + 10
print(resultado)

Vamos praticar

  • Faça um algoritmo para resolver a equação z = x + y - 4, armazenando o resultado na variável z. Considere que os valores iniciais de x e y são, respectivamente, 10 e 5. Depois disso exiba o resultado.

  • Faça um algoritmo para resolver a equação z = a * a - b + c, armazenando o resultado na variável z. Considere que os valores iniciais de a, b e c são, respecitvamente, 4, 6.5 e 10.5. Depois disso exiba o resultado.

Atenção

Conseguiu responder? -Eu espero que sim! Caso não tenha dado certo, você pode conferir as respostas no link acima.

Agora que você já realizou alguns pequenos testes, vamos falar dos tipos.

Lembra que falamos que uma variável é composta por: identificador, dado e tipo? Pois é.

Acredito que tenha ficado muito claro a questão do identificador e do valor, mas talvez o tipo ainda esteja confuso, mas calma, eu explico.

O tipo é o que define a característica do dado que a variável armazena, em Python não precisamos dizer explícitamente isso em nenhum momento, mas podemos deduzir.

Nos exercícios fizemos algumas operações matemáticas, mas nem todos os dados são números. As vezes precisamos armazenar valores de outros tipos, vamos conhecê-los:

  • Números: inteiros (int) e com casas decimais (float)

  • Textos (string ou str)

  • Lógicos (bool)

Uma coisa muito interessante sobre os tipos é que, após conhecermos eles, podemos simplesmente trabalhar como fizemos com os números antes. Você talvez nem tenha reparado, mas no segundo exercício utilizamos tanto números inteiros como floats.

Bastou declararmos as variáveis b e c com valores decimais.

Vamos para os textos agora!

Para definir que um valor é uma string existem 3 opções:

  • Entre aspas simples: 'texto';

  • Entre aspas duplas: "texto";

  • Entre uma trinca de aspas duplas: """texto""";

Você pode utilizar qualquer um deles e seu programa irá entender que se trata de uma string.

Vamos fazer um exemplo com a função print:

print("Olá Python!")

Particularmente eu prefiro utilizar a sintaxe com aspas duplas, mas esteja livre para usar a que mais lhe agradar.

Vamos juntos fazer um programa que solicite o nome do usuário e depois exiba-o no console! Para solicitar uma informação ao usuário utilize a função input, conforme código:

nome = input("Digite seu nome: ")
print(nome)

Legal né? - Note que você pode utilizar a função input para obter dados de qualquer tipo, não só para textos, mas nos outros casos será preciso transformar o tipo.

Teremos um capítulo complementar sobre o tipo string, ele possui diversas características específicas. Então por enquanto vamos para o próximo tipo: O tipo lógico!

Variáveis do tipo lógico ou boolean são utilizadas para definir verdades (True) e mentiras (False). Este tipo de variável só consegue armazenar estes dois valores.

Veja um exemplo:

verdade = True
mentira = False

Geralmente nas outras linguagens os valores deste tipo são escritos em letras minúsculas, mas em Python estes valores começam com letra maiúscula, mas as diferenças acabam aí.

Assim como os valores numéricos, também é possível realizar operações com valores lógicos. Neste caso utilizamos os operadores: não (not), e (and) e ou (or).

Vamos aplicar estes operadores em sentenças de linguagem natural:

  • Hoje deu sol pela manhã -> considere esta frase como verdade

  • Hoje choveu pela tarde -> considere esta frase como mentira

Estas afirmações em português podem ser interpretadas como:

sol_pela_manha   = True
chuva_pela_tarde = False

Agora vamos aplicar os operadores, começando pelo operador de negação (not):

  • Hoje não deu sol pela manhã -> se a primeira afirmação era verdade, esta afirmação é mentira

  • Hoje não choveu pela tarde -> se a segunda afirmação era mentira, esta afirmação é verdade

Perceberam algo?

O operador de negação inverte o valor de um valor lógico! O que antes era verdade agora é mentira e vice-versa.

Veja no código:

sol_pela_manha   = True
chuva_pela_tarde = False

sol = not sol_pela_manha     # -> False
chuva = not chuva_pela_tarde # -> True

O segundo operador é o operador e. Este operador relaciona dois valores diferentes para produzir um novo. Neste caso, para o resultado de uma operação e ser verdade, os dois valores relacionados precisam ser verdadeiros.

Vamos novamente para as sentenças:

  • Hoje deu sol pela manhã e choveu pela tarde -> será uma mentira, pois definimos que não houve chuva pela tarde.

  • Hoje deu sol pela manhã e não choveu pela tarde -> será verdade, pois ao negarmos o valor da chuva, os dois valores relacionados retornarão verdadeiro.

sol_e_chuva = sol_pela_manha and chuva_pela_tarde         # -> False
sol_e_nao_chuva = sol_pela_manha and not chuva_pela_tarde # -> True

O operador ou funciona de forma bastante similar ao e, mas nesse caso o valor produzido será verdadeiro sempre que um dos valores seja verdadeiro. Este caso é o que funciona pior comparado à nossa linguagem, mas acho que ainda ajuda a entender:

  • Hoje deu sol pela manhã ou choveu pela tarde -> se uma das afirmações for verdadeira, a frase é uma verdade.

Veja no código:

sol_ou_chuva = sol_pela_manha or chuva_pela_tarde         # -> True
sol_ou_nao_chuva = sol_pela_manha or not chuva_pela_tarde # -> True
nao_sol_ou_chuva = not sol_pela_manha or chuva_pela_tarde # -> False

Para ajudar a entender estas operações temos as famosas "Tabelas Verdade", veja:

Negação (not)

Valor

Resultado

True

False

False

True

E (and)

Primeiro Valor

Segundo Valor

Resultado

True

True

True

True

False

False

False

True

False

False

False

False

Ou (or)

Primeiro Valor

Segundo Valor

Resultado

True

True

True

True

False

True

False

True

True

False

False

False

Além destes operadores, os tipos lógicos também podem ser produzidos ao compararmos valores de qualquer tipo, por exemplo: 5 > 3 (cinco é maior que três?), esta expressão retorna um valor lógico!

cinco_maior_que_tres = 5 > 3 # -> True

Temos diversos operadores para realizar estas comparações!

Operador

Descrição

== (igual)

Retorna True caso os dois valores são iguais

!= (diferente)

Retorna True caso os dois valores sejam diferentes

> (maior)

Retorna True caso o valor à esquerda do operador seja maior que o valor à direita do operador

>= (maior ou igual)

Retorna True caso o valor à esquerda do operador seja maior ou igual que o valor à direita do operador

< (menor)

Retorna True caso o valor à esquerda do operador seja menor que o valor à direita do operador

<= (maior ou igual)

Retorna True caso o valor à esquerda do operador seja menor ou igual que o valor à direita do operador

Perceba que para compararmos os valores utilizamos dois iguais ==, isso porque quando utilizamos somente um igual estamos atribuindo um valor. Veja:

x = 5
y = 10

x = y  # -> estamos fazendo a variável x receber o mesmo valor da variável y
x == y # -> estamos comparando se os valores de x e y são iguais

Vamos praticar

  1. Faça um algoritmo que solicite um número ao usuário

  2. Faça um algoritmo que solicite o nome do usuário e depois escreva o nome da pessoa no console.

  3. Faça um algoritmo que pergunte ao usuário quantos anos ele tem, depois disso, escreva True no console, caso ele já tenha alcançado a maioridade (18 anos), caso contrário escreva False.

  4. Faça um algoritmo que solicite um número ao usuário, depois disso, escreva True no console, caso o número tenha dois dígitos (Esteja entre 10 e 99), caso contrário escreva False.

Atenção

PreviousVocê deveria aprender PythonNextDesvios condicionais, fazendo seu programa tomar decisões

Last updated 5 years ago

Was this helpful?

É fortemente recomendado que você tente fazer os exercícios antes de ver as respostas. Você pode encontrar as respostas , tome cuidado para não receber spoilers dos próximos exercícios.

É fortemente recomendado que você tente fazer os exercícios antes de ver as respostas. Você pode encontrar as respostas .

aqui
aqui