Introdução
1. O que são dados?
x = 10, onde 10 é o dado armazenado
2. Por que classificar dados em tipos?
Dados representam estados, e diferentes estados requerem diferentes tipos de representação
3. Prnicipais tipos de dados
- Números (inteiros, floats, complexos)
- Strings
- Bytes (abordado em codificação)
- Listas
- Tuplas
- Dicionários
- Conjuntos
4. Aspectos para estudo
#=============== Utilização Básica ================
#1. Propósito
#2. Definição
#3. Operações e métodos
#================= Características =================
#Armazena um ou múltiplos valores
#Ordenado ou não ordenado
#Mutável ou imutável
Números
Inteiros e floats:
# Inteiro (int)
idade = 25 # Equivalente a idade = int(25)
# Float (float)
salario = 4250.75 # Equivalente a salario = float(4250.75)
Outros tipos (informação):
# Números complexos
valor = 3 - 4j
print(valor.real) # 3.0
print(valor.imag) # -4.0
Strings
# Definição
nome = "maria" # Delimitada por aspas
# Operações essenciais:
#1. Acesso por índice
#2. Fatiamento
#3. Tamanho (len)
#4. Verificação de membro (in, not in)
#5. Remoção de espaços (strip)
#6. Divisão (split)
#7. Iteração
Operações importantes:
# Remoção de caracteres
texto = '**exemplo**'
print(texto.strip('*'))
# Conversão de caixa
print("Python".lower())
# Verificação
print("arquivo.txt".endswith('.txt'))
# Formatação
print("{} anos".format(28))
# Divisão
dados = "usr:bin:path"
print(dados.split(':'))
# Junção
print('-'.join(['2023','12','31']))
# Substituição
print("Oi Carlos".replace("Carlos", "Ana"))
# Verificação numérica
entrada = input("Idade: ")
print(entrada.isdigit())
Listas
# Definição
itens = ['lapis', 'caneta', 10, 20]
# Operações-chave:
#1. Acesso/atribuição por índice
#2. Fatiamento
#3. Tamanho (len)
#4. Verificação de membro
#5. Adição (append)
#6. Remoção (pop, remove)
#7. Iteração
# Fatiamento avançado
valores = [1,2,3,4,5]
print(valores[::-1]) # Inverte a lista
Tuplas
# Definição
coordenadas = (40.71, -74.00) # Imutável
# Operações:
#1. Acesso por índice
#2. Fatiamento
#3. Tamanho
#4. Verificação de membro
#5. Iteração
Dicionários
# Definição
pessoa = {'nome': 'carla', 'idade': 30}
# Operações:
#1. Acesso/atribuição por chave
#2. Tamanho
#3. Verificação de chave
#4. Remoção
#5. Métodos: keys(), values(), items()
#6. Iteração
Exemplo prático:
# Contagem de palavras
frase = "ola mundo ola python"
contagem = {}
for palavra in frase.split():
contagem[palavra] = contagem.get(palavra, 0) + 1
print(contagem)
Conjuntos
# Definição
primarios = {'vermelho', 'azul', 'amarelo'}
# Operações:
#1. Tamanho
#2. Verificação de membro
#3. União (|)
#4. Interseção (&)
#5. Diferença (-)
#6. Diferença simétrica (^)
# Remoção de duplicatas
numeros = [5,5,3,8,3]
unicos = list(set(numeros))
Resumo de Tipos de Dados
Classificação por uso de memória (crescente):
- Números
- Strings
- Conjuntos
- Tuplas
- Listas
- Dicionários
Mutabilidade:
- Mutáveis: Listas, dicionários
- Imutáveis: Números, strings, tuplas
Operadores
# Identidade (is, is not)
a = [1,2]
b = [1,2]
print(a == b) # True (valores iguais)
print(a is b) # False (objetos diferentes)
Tipos de operadores:
- Aritméticos: +, -, *, /
- Comparação: ==, !=, >, <
- Atribuição: =, +=, -=
- Lógicos: and, or, not
- Membros: in, not in
- Bitwise: &, |, ~
Codificação de Caracteres
Fundamentos de representação de texto (Unicode/UTF-8)
Manipulação de Arquivos
Técnicas para leitura e escrita de arquivos