Conteúdo

Variáveis e tipos de dados

Variáveis são como caixas em programação, aonde podemos guardar o que quisermos, seja texto, números, verdades ou mentiras, nada ou coisas bem complexas. Já tipos de dados são a definição do que são essas coisas que podemos guardar em variáveis e o que podemos fazer com elas.

De tipos de dados temos:

String

É texto, seja uma única letra ou várias frases ou parágrafos, se estiver entre aspas duplas "", pra python é um string

exemploDeTexto = "fçalskjfçlksadjaçlafkdsjçkelsd"
print(exemploDeTexto)

# adição de texto
textoAdicao = "batata" + " é muito legal")
print(textoAdicao)

Int

É um número inteiro, sem "" ou ., pode ser usado para cálculos

numero = input("Digite um número: ")
numero = int(numero)
if numero == 1:
    print("Usuário digitou o número 1")
else:
    print("Usuário não digitou o número 1")

numero = 5
print(numero)

outroNumero = 121320938
print(outroNumero)

print(numero,"+",outroNumero,"=",(numero+outroNumero))
print(numero,"-",outroNumero,"=",(numero-outroNumero))
print(numero,"*",outroNumero,"=",(numero*outroNumero))
print(numero,"/",outroNumero,"=",(numero/outroNumero))

Float

É um número quebrado, sem "", mas utilizamos ., pode ser usado para cálculos

numeroReal = input("Digite um número real: ")
numeroReal = float(numeroReal)
print(numeroReal,"vezes 2 é:",(numeroReal * 2))

numero = 5.6
print(numero)

outroNumero = 20.9
print(outroNumero)

print(numero,"+",outroNumero,"=",(numero+outroNumero))
print(numero,"-",outroNumero,"=",(numero-outroNumero))
print(numero,"*",outroNumero,"=",(numero*outroNumero))
print(numero,"/",outroNumero,"=",(numero/outroNumero))

Boolean

Significa verdadeiro ou falso, usamos muito com loops e ifs

verdadeiro = True
falso = False

if verdadeiro:
    print("É verdadeiro")

if not falso:
    print("É falso")

verdade = 1 == 1
print("1 é igual a 1?",verdade)

None

None significa nada. Frequentemente quando se usa algumas bibliotecas ou códigos mais avançados, quando se busca uma informação e não encontra nada, o código retorna None.

nada = None
if(not(nada)):
    print("É nada")
else:
    print("É alguma coisa")

Listas

Listas são uma coleção de informações ordenada. Você pode guardar um grande volume de informações nelas e buscá-las depois. O tipo de dado que se tem dentro de listas pode ser qualquer um, podem ser ints, strings, booleans, etc.

Para criar uma lista de ints:

list = [1,2,3]
print(list)

Para criar uma lista de strings:

list = ["something", "other something", "one more thing"]
print(list)

Para criar pegar o primeiro item de uma lista:

list = [1,2,3]
print(list[0])

Verificar se existe um item em uma lista:

list = [1,2,3]
print(1 in list)

Verificar o endereço de um item em uma lista:

list = ['banana', 'abacaxi', 'uva', 'morango']
print(list.index('uva'))

Objetos e bibliotecas

Objetos são dados complexos. Basicamente são várias propriedades/funções relacionadas agrupadas. Nós podemos criar nossos próprios objetos, mas faremos isso mais á frente. Objetos são essenciais para programar, por isso vamos aprender a mexer neles.

Objetos que costumamos mexer muito são os vindos de bibliotecas. Bibliotecas são pedaços de códigos reutilizáveis de Python que podemos usar em diferentes projetos. Todos eles são objetos, ou seja, dentro deles há várias diferentes coisas, um exemplo é o objeto math que contém várias diferentes funções matemáticas.

Para se usar uma biblioteca, você deve a importar no começo do código usando a palavra chave import nomeDaBiblioteca. Você só precisa importar a biblioteca uma vez por código, agora exemplos:

import math
print("A raiz quadrada de 9 é:", math.sqrt(9))
print("O número 5.3 está mais perto de 5 ou de 6? ", math.ceil(5.3))
print("Quanto é 2 elevado a 4? ", math.pow(2, 4))

Dentro da biblioteca (ou módulo dependendo de quem perguntar) math nós temos várias funções relacionadas a matemática. Para se usar um objeto você passa o nome do objeto + . + função ou propriedade, usando de exemplo o objeto math: math.sqrt(9), math.ceil(5.3), math.pow(2, 4), etc.

Outro objeto muito útil (também vindo de biblioteca) é o time:

import time

print("1")
time.sleep(1)
print("2")

Jogo de aventura melhorado

Agora para praticar esses novos tipos de dados, vamos melhorar nosso jogo de aventura que fizemos na última aula:

import time

def clear():
    print("\n" * 50)

resposta = None

while resposta == None:
    clear()
    print("Você está em uma floresta e a sua frente tem uma estrada, o que você faz?")
    print("1: Passa por ela")
    print("2: Senta e chora por algum motivo")
    print("3: Decide ser um rebelde e passa a andar fora da estrada")
    resposta = int(input("O que você irá fazer?\n"))

    if resposta == 1:
        print("Andando pela estrada...")
    elif resposta == 2:
        print("Você está chorando na estrada")
    elif resposta == 3:
        print ("A polícia da grama da floresta te para e te dá uma multa")
    else:
        print("Resposta inválida, tente novamente")
        resposta = None

count = 0
while count <= 10:
    print("...")
    time.sleep(0.5)
    if count == 10:
        print("De repente, mais que repente, você morre\n")
        time.sleep(3)
        print("FIN")
        time.sleep(3)
    count += 1
        
print("Aperte ENTER para terminar o jogo...")
input()