Tamanho de fonte
Alto contraste
Altura de linha
tipos de dados em python

Principais tipos de dados em Python: o que são e como utilizá-los

Avatar de Rebeca Honorio Rebeca Honorio
13 minutos de leitura 9 dias atrás

Entender os tipos de dados em Python é um passo fundamental para quem está começando a aprender essa linguagem de programação. Eles formam a base para qualquer operação que você realizará em seus programas, influenciando como os dados são armazenados, manipulados e acessados. 

Neste guia, vamos explorar os principais tipos de dados em Python, desde números simples até estruturas mais complexas, como listas e dicionários. Aproveite a leitura e prepare-se para expandir seus conhecimentos em programação!

O que são tipos de dados em Python?

tipos de dados em python

Os tipos de dados em Python são categorizados em diferentes grupos, sendo eles: numéricos, sequenciais, mapeamentos, conjuntos e o tipo especial None. Cada uma dessas categorias tem um propósito específico, com métodos e operações próprias. Algumas são utilizadas para armazenar informações, enquanto outras são projetadas para manipulá-las.

Um aspecto interessante de Python é que seus tipos de dados são dinâmicos. Isso significa que você não precisa declarar o tipo de uma variável explicitamente, o que torna a linguagem mais flexível e acessível, especialmente para iniciantes.

Tipos de dados numéricos 

Em Python, os tipos numéricos incluem inteiros e números de ponto flutuante. Vamos explorar as principais características e funcionalidades de cada um: 

Inteiros (int)

O tipo de dado numérico mais básico é o inteiro, representado pela classe int. Esse tipo de dado é usado para armazenar números inteiros, que podem ser tanto positivos quanto negativos e não possuem parte decimal. Eles são utilizados em situações como contagens, índices, operações matemáticas básicas e até em representações de valores como idades e quantidades.

idade = 25
print(idade)  # Saída: 25
Testar

Nesse exemplo, a variável idade é do tipo inteiro e armazena o valor 25. Em Python, você pode realizar várias operações matemáticas com inteiros, como adição, subtração, multiplicação e divisão, e o tipo int permite o uso de números de grande escala sem limitações específicas de tamanho, ao contrário de outras linguagens.

Números de ponto flutuante (float)

Além dos inteiros, Python também oferece o tipo float para representar números que contêm partes decimais.

Por exemplo:

numero_float = 3.7
numero_int = int(numero_float)  # Resultado será 3
Testar

Nesse caso, numero_float armazena um número decimal. Quando aplicamos a função int(), o valor decimal é truncado, ou seja, transforma-se em um inteiro (3). Isso demonstra a flexibilidade de Python em converter entre tipos de dados quando necessário.

Operações matemáticas com inteiros

Python permite realizar uma série de operações matemáticas com o tipo int, como adição, subtração, multiplicação e divisão. Além disso, podemos realizar operações mais avançadas, como potência, divisão inteira e operações com módulo.

a = 10
b = 3
# Adição, Subtração, Multiplicação e Divisão
print(a + b)  # Saída: 13
print(a - b)  # Saída: 7
print(a * b)  # Saída: 30
print(a / b)  # Saída: 3.3333

# Potência, Divisão Inteira, e Módulo
print(a ** b)  # Saída: 1000 (10^3)
print(a // b)  # Saída: 3 (Divisão inteira)
print(a % b)   # Saída: 1 (Resto da divisão)
Testar

Essas operações são fundamentais para uma série de algoritmos e aplicações práticas, como cálculos financeiros, estatísticos e otimizações.

Tipos de dados booleanos (Bool)

O tipo booleano (ou bool) representa valores de verdade: True (verdadeiro) ou False (falso). Esses valores são essenciais na tomada de decisões em programas Python, permitindo o controle de fluxo através de instruções condicionais como if e else. Eles são frequentemente usados em condições e loops para determinar se uma ação deve ser executada ou não.

Por exemplo, números diferentes de zero são tratados como True, enquanto o zero é considerado False. Da mesma forma, listas, strings ou qualquer coleção vazia são avaliadas como False, enquanto coleções com elementos são vistas como True. Essa funcionalidade permite verificações rápidas e eficientes sobre a presença ou ausência de dados.

No exemplo a seguir, ativo é uma variável booleana que armazena o valor True, representando uma condição verdadeira

ativo = True
print(ativo)  # Saída: True
Testar

Tipos de sequência em Python

As sequências são coleções de itens que desempenham um papel crucial na organização e manipulação de dados em Python. Aliás, os tipos de sequência mais comuns são  listas, tuplas e strings, que oferecem flexibilidade e desempenho eficientes.

Listas (list)

As listas são uma das estruturas de dados mais versáteis e utilizadas em Python. Ademais, elas podem armazenar itens de diferentes tipos e podem ser alteradas, o que significa que você pode adicionar, remover ou modificar seus elementos após a criação. Inegavelmente, essa flexibilidade torna as listas incrivelmente úteis.

Por exemplo:

frutas = ["maçã", "banana", "cereja"]
frutas.append("laranja")
print(frutas)  # Saída: ['maçã', 'banana', 'cereja', 'laranja']
Testar

Aqui, frutas é uma lista que armazena uma coleção de strings. Analogamente, listas oferecem uma série de métodos poderosos, como:

  • append(): para adicionar itens.
  • remove(): para excluir elementos.
  • sort(): para ordenar os itens.

Assim, as listas facilitam bastante a manipulação de dados. Além de serem uma estrutura versátil, as listas são iteráveis, o que significa que podemos percorrê-las elemento por elemento, tornando o processamento de dados mais simples. Enfim, uma funcionalidade particularmente interessante é a compreensão de listas (list comprehension), que permite criar listas de forma concisa e eficiente a partir de outros iteráveis:

[x * 2 for x in original_list]  # Dobra os valores de uma lista existente.
Testar

Portanto, essa sintaxe não apenas simplifica o código, mas também otimiza a execução.

Tuplas (tuple)

As tuplas são semelhantes às listas, entretanto, são imutáveis. Ou seja, uma vez que uma tupla é criada, seus elementos não podem ser alterados. Sobretudo, tuplas são úteis quando você deseja garantir que os dados permaneçam constantes durante a execução do programa.

cores = ("vermelho", "verde", "azul")
print(cores)  # Saída: ('vermelho', 'verde', 'azul')
Testar

No exemplo acima, cores é uma tupla que armazena uma coleção de strings. 

String 

Em Python, o tipo de dado utilizado para representar texto é chamado string, que é uma sequência de caracteres. As strings, afinal, são usadas para armazenar texto e também podem ser manipuladas de várias maneiras. Ademais, elas são extremamente versáteis para várias operações.

Strings (str)

Strings em Python podem ser definidas com aspas simples (‘), aspas duplas (“), ou aspas triplas (”’ ou “””). A diferença principal é que, com aspas triplas, é possível criar strings que ocupam várias linhas, permitindo a quebra de linha. Além disso, ao usar aspas triplas, podemos incluir aspas simples ou duplas dentro da string sem a necessidade de caracteres de escape. Aspas triplas também são amplamente utilizadas para documentar funções e métodos em Python, sendo chamadas de docstrings.

Conforme o exemplo abaixo:

# Usando aspas duplas
string2 = "Python é incrível!"

# Usando três aspas para multiline
string3 = """Esta é uma string
que ocupa várias linhas."""
Testar

Imutabilidade

As strings em Python são imutáveis, ou seja, uma vez criadas, não podem ser alteradas. Entretanto, qualquer operação que modifique uma string resultará na criação de uma nova string.

Acesso e manipulação

Os caracteres em uma string podem ser acessados usando a notação de índice, onde o primeiro caractere tem índice 0. Similarmente, Python suporta o fatiamento (slicing) para extrair substrings:

texto = "Python"
primeiro_caractere = texto[0]  # 'P'
substring = texto[1:4]         # 'yth'
Testar

Funções comuns

Python oferece várias funções e métodos úteis para a manipulação de strings. Enfim, entre os mais utilizados estão:

  • len(): retorna o comprimento da string.
  • str.lower(): converte a string para letras minúsculas.
  • str.upper(): converte a string para letras maiúsculas.
  • str.strip(): remove espaços em branco do início e do fim da string.
  • str.split(): divide a string em uma lista com base em um delimitador.

Inesperadamente, essas funções são extremamente úteis em diversas situações. Veja um exemplo de uso:

texto = " Olá, Mundo! "
print(len(texto))          # Saída: 13
print(texto.strip())       # Saída: 'Olá, Mundo!'
print(texto.lower())       # Saída: 'olá, mundo!'
Testar

Operações comuns em sequências

Conforme o tipo da sequência (mutável ou imutável), Python suporta várias operações, incluindo:

  • Acesso por índice: para acessar um item específico na sequência.
  • Fatiamento (slicing): para extrair uma parte da sequência.
  • Concatenação (+): para combinar duas sequências.
  • Repetição (*): para repetir os elementos de uma sequência várias vezes.

Assim, essas operações tornam a manipulação de dados muito mais ágil e eficiente.

Tipos de mapeamento: dicionários (dict)

Os dicionários (dict) em Python são uma das estruturas mais versáteis e poderosas disponíveis. Eles nos permitem criar coleções de itens em que cada elemento é armazenado como pares chave: valor. Essa estrutura é ideal para armazenar dados relacionados, o que faz dos dicionários uma excelente ferramenta para representar relações de dados do mundo real, facilitando tanto o acesso quanto a manipulação dessas informações.

Para definir um dicionário, utilizamos chaves {} e separamos cada par chave: valor por vírgulas. Por exemplo:

{'nome': 'Alice', 'idade': 30}
Testar

Além da sua flexibilidade, os dicionários se destacam pela rapidez no acesso aos elementos, já que, ao utilizar chaves, a busca de valores é feita de forma eficiente. Isso os torna uma ferramenta essencial para programadores que lidam com grandes volumes de dados, onde a performance é crucial.

Os dicionários são mutáveis, ou seja, podemos alterar seus valores ou adicionar novos pares após sua criação. O acesso aos valores é feito por meio de suas chaves, conforme o exemplo abaixo:

aluno = {"nome": "João", "idade": 20}
print(aluno["nome"])  # Saída: João
Testar

Nesse exemplo, aluno é um dicionário que armazena informações sobre um estudante, e acessamos o nome dele diretamente usando a chave “nome“.

Tipos de conjuntos em Python (set)

Os conjuntos ou sets em Python são coleções não ordenadas de itens únicos. Portanto, eles são extremamente úteis para operações de matemática de conjunto, como união, diferença, diferença simétrica e interseção. Aliás, esses conjuntos podem ser empregados para remover duplicatas de uma coleção e testar se um item é membro de uma coleção.

Primordialmente, para criar conjuntos em Python, pode-se utilizar chaves {} ou a função set(). Por exemplo:

meu_conjunto = {1, 2, 3}
ou
meu_conjunto = set([1, 2, 3])
Testar

Todavia, por serem coleções não ordenadas, os conjuntos não suportam acesso por índice ou chaves, mas eles garantem que todos os elementos sejam únicos.

Os conjuntos são mutáveis e não permitem elementos duplicados, o que certamente é útil quando se deseja garantir a exclusividade dos itens.

numeros = {1, 2, 3, 4, 5}
numeros.add(6)
print(numeros)  # Saída: {1, 2, 3, 4, 5, 6}
Testar

Aqui, numeros é um conjunto que armazena uma coleção de inteiros. Conforme mencionado anteriormente, a adição de um novo elemento é feita com o método add(), entretanto lembre-se de que os conjuntos não possuem uma ordem específica.

Assim, os conjuntos são ideais quando a remoção de duplicatas e a realização de operações matemáticas entre coleções são primordiais.

Tipo especial (NoneType)

Por fim, temos o NoneType, um tipo especial em Python que representa a ausência de valor ou um valor vazio. Ele é comumente utilizado para inicializar variáveis que ainda não possuem um valor definido ou para indicar que uma função não retorna nenhum valor.

Em muitas outras linguagens de programação, conceitos como null ou nil desempenham um papel semelhante. No entanto, em Python, None é um objeto único e tem um comportamento específico. É importante destacar que None é diferente de False, de zero ou de uma string vazia. Quando você compara None com qualquer outro valor utilizando operadores de igualdade (==), o resultado será sempre False, exceto quando comparado com ele mesmo.

NoneType

resultado = None
print(resultado)  # Saída: None
Testar

No exemplo acima, resultado é uma variável que foi inicializada com o valor None, representando a ausência de um valor definido.

Outros tipos (bytes, bytearray e range)

Bytes (bytes)

O tipo bytes é imutável e contém apenas dados binários, enquanto seja mais especializado. Eventualmente, ele é útil para manipulação de dados em nível baixo.

dados_binarios = b'bytes'

Bytearray (bytearray)

Similarmente ao bytes, o bytearray também contém dados binários, todavia ele é mutável. Portanto, você pode modificar seus elementos após a criação, o que traz mais flexibilidade em cenários específicos.

dados_mutaveis = bytearray(b'bytes')

Range (range)

O tipo range representa uma sequência de números inteiros, principalmente utilizado em loops para gerar números sequenciais. Certamente, isso é muito útil em operações repetitivas.

numeros = range(0, 10)  # Gera números de 0 a 9

Curso de Python gratuito

Se você deseja continuar sua jornada no mundo da programação, recomendamos o curso Python para Iniciantes: do Zero ao Primeiro Projeto da Asimov Academy. Esse curso gratuito foi especialmente desenvolvido para ensinar Python de forma prática e acessível, mesmo para aqueles sem nenhuma experiência prévia. Em apenas 2 horas, você aprenderá conceitos fundamentais, como variáveis, loops e funções, além de criar seu primeiro projeto Python: um web app interativo que exibe os livros mais vendidos da Amazon.

Conteúdo do curso: 

Você terá contato com os principais tipos de dados em Python (como strings, números e listas), trabalhará com valores booleanos e operadores de comparação, e dominará o uso de loops for e condicionais if, elif, else. Além disso, você terá a oportunidade de explorar algumas das bibliotecas mais famosas de Python, como Pandas, Plotly e Streamlit, que são essenciais para análise de dados e construção de aplicações web.

Esse curso é ideal para quem quer aprender Python de graça e de forma rápida. 

Seja você um curioso em busca de seus primeiros passos no mundo da programação ou alguém que deseja aprender a desenvolver projetos práticos, esse curso da Asimov Academy é uma excelente porta de entrada.

Imagem de um notebook

Cursos de programação gratuitos com certificado

Aprenda a programar e desenvolva soluções para o seu trabalho com Python para alcançar novas oportunidades profissionais. Aqui na Asimov você encontra:

  • Conteúdos gratuitos
  • Projetos práticos
  • Certificados
  • +20 mil alunos e comunidade exclusiva
  • Materiais didáticos e download de código
Inicie agora

Comentários

Comentar
Faça parte da discussão Crie sua conta gratuita e compartilhe
sua opinião nos comentários
Entre para a Asimov