Aula 4 Tipos de Variáveis

Em programação, variáveis são espaços na memória utilizados para armazenar dados que serão manipulados por um programa.

No Python, não é necessário declarar explicitamente o tipo da variável. O tipo é determinado automaticamente pelo valor atribuído.

# Exemplo 1 - Python

nome = "Maria"
idade = 25
altura = 1.70

Neste exemplo, podemos verificar:

Variável Valor Tipo
nome “Maria” string
idade 25 inteiro (int)
altura 1.70 ponto flutuante (float)

Podemos verificar o tipo usando:

# Exemplo 1 continuação - Python

print(type(nome))
print(type(idade))
print(type(altura))

4.1 Python - Linguagem fortemente tipada x linguagem fracamente tipada

4.1.1 Linguagens Fortemente Tipadas

Python é uma linguagem FORTEMENTE TIPADA:

Uma linguagem é fortemente tipada quando:

Ela não permite misturar tipos diferentes sem conversão explícita
Obriga o programador a ser claro sobre os tipos

4.1.2 Características

  • Não faz conversões automáticas “perigosas”

  • Erros aparecem mais cedo (mais segurança)

  • Código mais previsível

Exemplo em python:

Tentativa de misturar 2 variáveis de duas naturezas diferentes (inteiro e texto):

# exemplo 2 - Python

numero = 10
texto = "5"

print(numero + texto)  # Aqui vai dar ERRO
TypeError: unsupported operand type(s)

4.1.3 Linguagens Fracamente Tipadas

Javascript é uma linguagem FRACAMENTE TIPADA:

Uma linguagem é fracamente tipada quando:

  • Ela permite misturar tipos automaticamente
  • Faz conversões implícitas (automáticas)

4.1.4 Características

  • Mais flexível
  • Pode gerar comportamentos inesperados
  • Conversões automáticas podem confundir

Exemplo em javascript:

// Exemplo 3 - Liguagem Javascript

console.log(10 + "5")

resultado

"105"

O número 10 foi convertido automaticamente para texto (string).

Outro exemplo em javascript:

// Exemplo 4 - Liguagem Javascript

console.log("5" - 2)
3

A o texto “5” foi convertida para número automaticamente para que pudesse ser feita a operação de subtração

Conclusão:

Característica Fortemente Tipada Fracamente Tipada
Conversão automática Não (ou muito limitada) Sim
Segurança Alta Menor
Previsibilidade Alta Pode ser confusa
Facilidade inicial Média Alta
Exemplo C, C++, Python, Java, C# JavaScript, PHP (em muitos casos)

4.2 Python - Operadores Aritméticos

Os operadores aritméticos são utilizados para realizar operações matemáticas.

Operador Significado Exemplo
+ soma 5 + 3
- subtração 5 - 3
* multiplicação 5 * 3
/ divisão 10 / 2
// divisão inteira 10 // 3
% resto da divisão 10 % 3
** potência 2 ** 3

Exemplos em python:

# Exemplo 5 - Liguagem Python - Operadores Aritméticos

a = 10
b = 3

print("Soma:", a + b)
print("Subtração:", a - b)
print("Multiplicação:", a * b)
print("Divisão:", a / b)
print("Divisão inteira:", a // b)
print("Resto:", a % b)
print("Potência:", a ** b)

Resultado:

Soma: 13
Subtração: 7
Multiplicação: 30
Divisão: 3.3333
Divisão inteira: 3
Resto: 1
Potência: 1000

4.3 Python - Operadores Relacionais (Comparação)

Os operadores relacionais são utilizados para comparar valores. O resultado sempre será True (verdadeiro) ou False (falso).

Operador Significado
== igual
!= diferente
> maior que
< menor que
>= maior ou igual
<= menor ou igual

Exemplo:

# Exemplo 6 - Liguagem Python - Operadores Relacionais

x = 10
y = 5

print(x == y)
print(x != y)
print(x > y)
print(x < y)
print(x >= y)
print(x <= y)

Saída:

False
True
True
False
True
False

4.4 Python - Operadores Lógicos

Os operadores lógicos são usados para combinar expressões booleanas.

Operador Significado
and E lógico
or OU lógico
not negação

Exemplo:

# Exemplo 7 - Liguagem Python - Operadores lógicos

idade = 20
tem_carteira = True

print(idade >= 18 and tem_carteira)
print(idade >= 18 or tem_carteira)
print(not tem_carteira)

Saída:

True
True
False

4.5 Python - Operadores de Atribuição

Os operadores de atribuição são usados para atribuir valores às variáveis.

Operador Exemplo Equivalente
= x = 5 atribuição
+= x += 2 x = x + 2
-= x -= 2 x = x - 2
*= x *= 2 x = x * 2
/= x /= 2 x = x / 2
%= x %= 2 x = x % 2
# Exemplo 8 - Liguagem Python - Operadores de Atribuição

x = 10

x += 5
print(x)

x *= 2
print(x)

x -= 4
print(x)

4.6 Python - Operadores de Identidade

Os operadores de identidade verificam se duas variáveis apontam para o mesmo objeto na memória.

Operador Significado
is são o mesmo objeto
is not não são o mesmo objeto
# Exemplo 9 - Liguagem Python - Operadores de Identidade

a = [1,2,3]
b = a
c = [1,2,3]

print(a is b)
print(a is c)

Saída:

False
True

Isso acontece porque b referencia o mesmo objeto que a, enquanto c é um novo objeto na memória.

4.7 Python - Operadores de Associação

Verificam se um valor pertence a uma sequência.

Operador Significado
in está presente
not in não está presente
# Exemplo 10 - Liguagem Python - Operadores de Associação

lista = [10,20,30,40]

print(20 in lista)
print(5 in lista)
print(5 not in lista)

Saída:

True
False
True

4.8 Python - “Converter” tipo de Variável (Type Casting)

Type Casting é a conversão de um tipo de dado para outro.

Em Python usamos funções como:

Função Conversão
int() para inteiro
float() para decimal
str() para texto

4.8.1 Conversão para Inteiro (int):

# Exemplo 11 - Liguagem Python - Type Casting (converter um tipo de variável no outro)

numero = "10"

numero_int = int(numero)

print(numero_int)
print(type(numero_int))

4.8.2 Conversão para número real (float):

# Exemplo 12 - Liguagem Python - Type Casting (converter um tipo de variável no outro)

valor = "3.14"

valor_float = float(valor)

print(valor_float)
print(type(valor_float))

4.8.3 Conversão para cadeia de caracteres (string):

# Exemplo 13 - Liguagem Python - Type Casting (converter um tipo de variável no outro)

idade = 25

texto = str(idade)

print(texto)
print(type(texto))

4.8.4 Exemplo integrando tudo:

# Exemplo 14 - Liguagem Python - Type Casting (converter um tipo de variável no outro)

numero1 = input("Digite um número: ")
numero2 = input("Digite outro número: ")

numero1 = int(numero1)
numero2 = int(numero2)

soma = numero1 + numero2

print("A soma é:", soma)

Aqui utilizamos:

  • input() → leitura de dados

  • int() → conversão de tipo

  • + → operador aritmético

4.9 Exercícios de Tipos de Variáveis

4.9.1 Exemplos:

Operadores Aritméticos + Type Casting

4.9.1.1 Exemplo 1) Leia dois números digitados pelo usuário (como texto), converta-os para inteiro e mostre:

  • Soma

  • Multiplicação

  • Divisão

# Lista de Exercícios - Exemplo 1


numero1 = input("Digite o primeiro número: ")
numero2 = input("Digite o segundo número: ")

numero1 = int(numero1)
numero2 = int(numero2)

soma = numero1 + numero2
multiplicacao = numero1 * numero2
divisao = numero1 / numero2

print("Soma:", soma)
print("Multiplicação:", multiplicacao)
print("Divisão:", divisao)

Saída

Digite o primeiro número: 10
Digite o segundo número: 5

Soma: 15
Multiplicação: 50
Divisão: 2.0

Operadores Relacionais + Lógicos

4.9.1.2 Exemplo 2) Crie um programa que leia a idade de uma pessoa e informe se ela:

  • Pode dirigir (idade ≥ 18 E possui carteira)

# Lista de Exercícios - Exemplo 2


idade = int(input("Digite sua idade: "))
tem_carteira = input("Possui carteira? (s/n): ")

tem_carteira = tem_carteira == "s"

pode_dirigir = idade >= 18 and tem_carteira

print("Pode dirigir?", pode_dirigir)

Saída

Digite sua idade: 20
Possui carteira? (s/n): s

Pode dirigir? True

Operadores de Associação + Identidade

4.9.1.3 Exemplo 3) Dada uma lista de números, verifique:

  • Se o número 10 está na lista

  • Se duas listas são o mesmo objeto


# Lista de Exercícios - Exemplo 3


lista1 = [5, 10, 15, 20]
lista2 = lista1
lista3 = [5, 10, 15, 20]

print("10 está na lista?", 10 in lista1)

print("lista1 é lista2?", lista1 is lista2)
print("lista1 é lista3?", lista1 is lista3)

Saida

10 está na lista? True
lista1 é lista2? True
lista1 é lista3? False

4.9.2 Exercícios Propostos

4.9.2.1 Exercício 1 — Operações Básicas

Leia dois números e mostre:

  • Soma
  • Subtração
  • Resto da divisão

4.9.2.2 Exercício 2 — Comparação de Números

Leia dois números e informe:

  • Se são iguais
  • Qual é o maior

4.9.2.3 Exercício 3 — Verificação de Intervalo

Leia um número e verifique se ele está entre 10 e 50.


4.9.2.4 Exercício 4 — Operadores Lógicos

Leia a idade e informe se a pessoa:

  • É maior de idade (≥18)
  • É idosa (≥60)

4.9.2.5 Exercício 5 — Type Casting

Leia um número decimal (string), converta para:

  • float
  • int

Mostre ambos os resultados.


4.9.2.6 Exercício 6 — Associação em Lista

Crie uma lista com 5 números digitados pelo usuário e verifique se o número 25 está presente.


4.9.2.7 Exercício 7 — Identidade vs Igualdade

Crie duas listas iguais e:

  • Compare com ==
  • Compare com is

Explique o resultado.