No post anterior vimos o que são variáveis. Nesse post iremos falar sobre o que são dados e quais os tipos em Python existentes.
Quando você envia um texto para sua esposa você está enviando um dado, assim também como quando envia um número, som ou vídeo. Isso porque dados em linguagem de computador são informações que podem ser armazenadas e processadas pelo computador. Eles podem representar números, texto, imagens, sons e outros tipos de informações.
Os dados são a base para a realização de cálculos, tomada de decisões e execução de tarefas pelos computadores. O tipo de dados representa um tipo de valor e determina quais operações podem ser realizadas nele.
O computador é um dispositivo de processamento de dados. O computador armazena os dados em sua memória e os processa de acordo com o programa fornecido. Dados são uma representação de fatos sobre um determinado objeto.
tutorialspoint
O que são dados em Python?
Em Python a explicação ou definição do que são dados não é diferente: os dados são informações que podem ser armazenadas e manipuladas pelo computador. Eles podem ser números, palavras, textos, imagens e muito mais. Por exemplo, se você quiser representar a sua idade em Python, você pode usar um dado do tipo número. Se você quiser representar o seu nome, você pode usar um dado do tipo texto.
Como Python processa dados?
O processador é o cérebro do computador e é responsável por processar os dados. Ele recebe os dados através de dispositivos de entrada, como teclado e mouse. Em seguida, ele executa instruções em uma velocidade muito rápida, seguindo um conjunto de regras chamado de código de máquina. Essas instruções dizem ao processador o que fazer com os dados. O processador realiza cálculos, comparações e outras operações para processar os dados. Por fim, ele produz um resultado, que pode ser exibido na tela, armazenado em um arquivo ou enviado para outros dispositivos de saída, como impressora ou alto-falantes ou para a interface do Python.
Quando os dados são recebidos pelo Python, através de teclado ou outro dispositivo qualquer, ele processa esses dados de uma forma que é fácil de entender para nós, humanos. Quando escrevemos um código em Python, podemos dizer ao computador o que fazer com os dados. Por exemplo, podemos pedir para somar dois números, imprimir uma mensagem na tela ou até mesmo criar um jogo divertido. Python é como um assistente que nos ajuda a lidar com os dados de forma eficiente.
1. Tipos de dados em Python
Os tipos de dados em Python são usados para definir o tipo de uma variável. Define que tipo de dados vamos armazenar em uma variável. Os dados armazenados na memória podem ser de vários tipos. Por exemplo, a idade de uma pessoa é armazenada como um valor numérico e seu endereço é armazenado como caracteres alfanuméricos.
Python tem vários tipos de dados integrados que discutiremos neste tutorial:
- Numérico: int, float, complexo
- String: str
- Sequência: lista, tupla, intervalo
- Binário: bytes, bytearray, memoryview
- Mapeamento: dict
- Booleano: bool
- Set: set, fronzenet
- None: NoneType
1.2 Dado Numérico em Python
Os tipos de dados numéricos do Python armazenam valores numéricos – isso é mais que lógico 🙂 – Objetos numéricos são criados quando você atribui um valor a eles. Por exemplo,
var1 = 1 # tipo de dados int var2 = True # tipo de dados bool var3 = 10.023 # tipo de dados flutuante var4 = 10+3j # tipo de dados complexo
Python suporta quatro tipos numéricos diferentes e cada um deles possui classes integradas na biblioteca Python, chamadas int, bool, float e complex respectivamente.
- int: números inteiros com sinal
- bool: subtipo de números inteiros
- float: valores reais de ponto flutuante
- complexo: números complexos
Assim como eu, você deve está se perguntando o que é esse tal de tipo complexo de dado em Python. Um dado complexo é composto de duas partes: real e imaginária e são separados por sinais ‘+‘ ou ‘–‘; A parte imaginária tem o sufixo ‘j’, que é o número imaginário. O número complexo em Python é representado como x+yj, onde x é a parte real e y é a parte imaginária. Portanto, 5+6j é um número complexo.
Há uma função em Python chamada type() que até já usamos mos post “Aprendendo Python por Conta Própria: Variáveis em Python” n a seção “Exibindo os Tipos de Dados(Variáveis) em Python“.
type() que retorna a classe do objeto fornecido. Aqui, é usado para verificar o tipo de um número inteiro e de ponto flutuante. Dentro de type() você coloca uma variável o um texto qualquer. Veja,
>>> type(123) <class 'int'> >>> type(9.99) <class 'float'>
Se fizemos isso com 5+6j teremos:
>>> type(5+6j) <class 'complex'>
Como vimos acima, sabemos que um número booleano possui apenas dois valores possíveis, representados pelas palavras-chave true(Verdadeiro) e false(Falso). Eles correspondem aos inteiros 1 e 0, respectivamente.
>>> type (True) <class 'bool'> >>> type(False) <class 'bool'>
Veja uma tabela com exemplos,
Here are some examples of numbers −
int | bool | float | complex |
---|---|---|---|
10 | True | 0.0 | 3.14j |
0O777 | False | 15.20 | 45.j |
-786 | -21.9 | 9.322e-36j | |
080 | 32.3+e18 | .876j | |
0x17 | -90. | -.6545+0J | |
-0x260 | -32.54e100 | 3e+26J | |
0x69 | 70.2-E12 | 4.53e-7j |
Você deve está se perguntando o porquê que “0O777” e “0x17” são considerados inteiros. O prefixo “0O” indica que o número é representado em octal (base 8) e o prefixo “0x” indica que o número é representado em hexadecimal (base 16). Ambos são números inteiros válidos em Python, mas representados em diferentes bases numéricas. Python permite a representação de números inteiros em bases diferentes, como decimal, octal e hexadecimal, para atender a várias necessidades de programação.
Exemplo de um script Python,
# variável inteira. a = 100 print("O tipo de variável com valor", a, "is", type(a)) # variável booleana. b = True print("O tipo de variável com valor", b, "is", type(b)) #variável flutuante. c=20,345 print("O tipo de variável com valor", c, "is", type(c)) # variável complexa. d=10+3j print("O tipo de variável com valor", d, "is", type(d))
1.3 Tipos de dados String e de sequência em Python
Aqui juntei numa mesma explicação dados String e de sequência em python, isso porque uma string não deixa de ser uma sequência de caracteres. Em Python,
- o tipo de dados “String” representa uma sequência de caracteres, como palavras, frases ou até mesmo números escritos como texto.
- Já o tipo de dados “Sequência” em Python é uma coleção ordenada de elementos, onde cada elemento possui uma posição específica na sequência. As strings são um exemplo de sequência em Python.
Em resumo, temos como tipos de dados de sequência: String, Lista e Tuplas.
1.3.1 String em Python
É usado para representar texto em Python. Por exemplo, você pode armazenar nomes, frases ou qualquer combinação de caracteres em uma string. As strings são escritas entre aspas simples (”) ou duplas (“”).
Exemplos,
minha_string = 'Olá, Mundo!'
As strings são imutáveis, o que significa que não podem ser alteradas depois de criadas. No entanto, é possível criar novas strings a partir de strings existentes usando operações de concatenação e formatação. Ao executar uma operação em strings, você sempre produz um novo objeto string do mesmo tipo, em vez de alterar uma string existente.
Contanto que a mesma sequência de caracteres esteja entre aspas simples, duplas ou triplas, não importam. Portanto, as seguintes representações de string são equivalentes:
>>> 'Categoria Outros' 'Categoria Outros' >>> "Categoria Outros" 'Categoria Outros' >>> '''Categoria Outros''' 'Categoria Outros'
Uma string em Python é um objeto da classe str. Isso pode ser verificado com a função type().
>>> type("Bem-vindo ao Categoria Outros") <class 'str'>
Como sendo uma sequência de caracteres, uma string pode ter manipulados seus elementos de acordo com suas posições e para isso usamos fatiamento(ou slicing) e concatenação. O fatialmento é usado usando [ ] e [:]
str = 'Olá, mundo!' print (str) # Imprime string completa print (str[2]) # Imprime o primeiro caractere da string print (str[1:6]) # Imprime caracteres começando do 2º ao 6º print (str[2:]) # Imprime uma string começando no terceiro caractere print (str * 2) # Imprime string duas vezes print (str + " Teste") # Imprime string concatenada
Isso produzirá o seguinte resultado,
Olá, mundo! á lá, m á, mundo! Olá, mundo!Olá, mundo! Olá, mundo! Teste
1.3.2 Lista em Python
Lista é uma coleção ordenada de elementos em Python. Você pode armazenar diferentes tipos de dados em uma lista, como números, strings e até mesmo outras listas. As listas são escritas entre colchetes ([]), e os elementos são separados por vírgulas.
Exemplos,
minha_lista = [1, 2, 3, 'quatro', 'cinco']
As listas são mutáveis, o que significa que é possível adicionar, remover e modificar valores em uma lista depois de criada.
Uma lista em Python é um objeto da classe list. Podemos verificar isso com a função type().
>>> minha_lista = [1, 2, 3, 'quatro', 'cinco'] >>> type (minha_lista) <class 'list'>
Conforme mencionado, um item da lista pode ser de qualquer tipo de dados. Isso significa que um objeto de lista também pode ser um item de outra lista. Nesse caso, torna-se uma lista aninhada.
[['Um', 'Dois', 'Três'], [1,2,3], [1,0, 2,0, 3,0]]
Os valores armazenados em uma lista Python podem ser acessados usando o operador slice ([ ] e [:]) com índices começando em 0 no início da lista e indo até o final -1. O sinal de mais (+) é o operador de concatenação de lista e o asterisco (*) é o operador de repetição. Por exemplo
>>> minha_lista = [1, 2, 3, 'quatro', 'cinco'] >>> lista_pequena = ['manga', 'goaiaba']print (minha_lista) # Imprime a lista completa print(minha_listaa[0]) # Imprime o primeiro elemento da lista print (minha_list[1:3]) # Imprime elementos começando do 2º ao 3º print (minha_list[2:]) # Imprime elementos a partir do 3º elemento print (lista_pequena * 2) # Imprime a lista duas vezes print (minha_lista + lista_pequena) # Imprime listas concatenadas
O resultado é:
[1, 2, 3, 'quatro', 'cinco'] 1 [2, 3] [3, 'quatro', 'cinco'] ['manga', 'goiaba', 'manga', 'goiaba'] [1, 2, 3, 'quatro', 'cinco', 'manga', 'goiaba']
Podemos alterar um item na lista acima. Ela tem 5 elementos: 1, 2, 3, ‘quatro’, ‘cinco’.
lembre-se que listas e tuplas iniciam a contagem em zero e não 1. Então o quinto elemento é o quarto. Vamos acrescentar um quinto.
A lista em seu estado original
>>> minha_lista = [1, 2, 3, 'quatro', 'cinco'] >>> print (minha_lista) [1, 2, 3, 'quatro', 'cinco']
Podemos colocar muitas coisas dentro de uma lista, inclusive uma tupla.
minha_lista = [(1, 2, 3), 'quatro', 'cinco']
Agora alteramos cinco por cem
>>> minha_lista[4] = 'cem' >>> print (minha_lista) [1, 2, 3, 'quatro', 'cem']
1.3.3 Tuplas em Python
Tipo de dados Tupla (Tuple) é semelhante a uma lista, mas é imutável, o que significa que não pode ser alterada após a criação. As tuplas são usadas para armazenar um conjunto fixo de elementos. Elas são escritas entre parênteses (()) e os elementos são separados por vírgulas.
minha_tupla = (1, 2, 3, 'quatro', 'cinco')
Todos os exemplos que fizemos com as listas podem ser feitos com tuplas de forma similar.
Em Python, uma tupla é um objeto da classe tupla. Podemos verificar isso com a função type().
>>> minha_tupla = (1, 2, 3, 'quatro', 'cinco') >>> type(minha_tupla) <class 'tuple'>
Para formar uma tupla, o uso de parênteses é opcional. Os itens de dados separados por vírgula sem nenhum símbolo delimitador são tratados como uma tupla por padrão.
>>> minha_tupla = 'quatro', 'cinco' >>> type(minha_tupla) <class 'tuple'>
Vamos testar e validar que a tupla é somente leitura. Veja ela em seu estado original
>>> minha_tupla = (1, 2, 3, 'quatro', 'cinco') >>> print (minha_tupla) (1, 2, 3, 'quatro', 'cinco')
Agora vamos tentar alterar cinco por cem e veja o erro
>>> minha_tupla[4] = 'cem' Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'tuple' object does not support item assignment
O erro “TypeError: ‘tuple’ object does not support item assignment” pode ser traduzido como “TypeError: o objeto ‘tuple’ não suporta atribuição de item“
1.4 Tipo de Dado Dicionário em Python
Em Python, um dicionário é um tipo de dados que permite armazenar pares de chave-valor. É como um dicionário real, onde você pode procurar uma palavra (chave) e encontrar seu significado (valor). As chaves são únicas e os valores podem ser de qualquer tipo de dado. Os dicionários são úteis para armazenar e recuperar informações de maneira rápida e eficiente.
O dicionário é um objeto mutável, portanto é possível realizar ações de adição, modificação ou exclusão com a funcionalidade correspondente definida na classe dict.
O dicionário em Python é como arrays associativos ou hashes encontrados em Perl e consiste em pares de chave:valor. Os pares são separados por vírgula e colocados entre chaves {}. Para estabelecer o mapeamento entre chave e valor, o símbolo de ponto e vírgula’:’ é colocado entre os dois.
>>> {1:'um', 2:'dois', 3:'três'}
Em Python, dicionário é um objeto da classe dict integrada. Podemos verificar isso com a função type().
>>> type({1:'um', 2:'dois', 3:'três'}) <class 'dict'>
Os dicionários são colocados entre chaves ({ }) e os valores podem ser atribuídos e acessados usando colchetes ([]). Por exemplo:
dict = {} dict['um'] = "Este é um" dict[2] = "Isso é dois" dict_pequena = {'nome': 'joão','código':6734, 'depto': 'vendas'} print (dict['um']) # Imprime o valor para a chave 'um' print (dict[2]) # Imprime o valor para 2 chaves print (dict_pequena) # Imprime o dicionário completo print (dict_pequena.keys()) # Imprime todas as chaves print (dict_pequena.values()) # Imprime todos os valores
Isso produz o seguinte resultado,
Este é um Isso é dois {'nome': 'joão', 'código': 6734, 'depto': 'vendas'} dict_keys(['nome', 'código', 'depto']) dict_values(['joão', 6734, 'vendas'])
1.5 Tipo de dados do conjunto(Set) em Python
Em Python, um conjunto (ou set) é um tipo de dado que armazena uma coleção de elementos únicos e não ordenados. Ele é representado por chaves {} e os elementos são separados por vírgulas. Os conjuntos são mutáveis, o que significa que é possível adicionar, remover e modificar os elementos. Além disso, os conjuntos não permitem elementos duplicados, ou seja, cada elemento aparece apenas uma vez no conjunto. Isso os torna úteis para operações de união, interseção e diferença entre conjuntos.
Veja um exemplo: {2023, “Python”, 3.11, 5+6j, 1.23E-4}
Itens separados por vírgula em um conjunto são colocados entre chaves ou colchetes {}. Os itens na coleção definida podem ser de diferentes tipos de dados.
Se teclar Enter teremos o seguinte resultado,
>>> {2023, "Python", 3.11, 5+6j, 1.23E-4} {(5+6j), 3.11, 0.000123, 2023, 'Python'}
Observe que os itens da coleção definida podem não seguir a mesma ordem em que foram inseridos. A posição dos itens é otimizada pelo Python para realizar operações sobre conjuntos conforme definido em matemática.
Set ou conjunto é um objeto da classe set integrada, como pode ser verificado com a função type().
>>> type({2023, "Python", 3.11, 5+6j, 1.23E-4}) <class 'set'>
Um conjunto pode armazenar apenas objetos imutáveis, como número (int, float, complexo ou bool), string ou tupla. Se você tentar colocar uma lista ou um dicionário na coleção definida, o Python gerará um TypeError.
Somente objetos imutáveis possuem função de hashing. Posso dizer que são hasháveis? Hashing é um mecanismo da ciência da computação que permite uma busca mais rápida de objetos na memória do computador.
1.6 Tipo de dado booleano em Python
Dado booleano é uma informação que pode ser verdadeira ou falsa. É como responder “sim” ou “não” para uma pergunta.
O tipo booleano Python é um dos tipos de dados integrados que representa um dos dois valores Verdadeiro(true) ou Falso(false). A função bool() do Python permite avaliar o valor de qualquer expressão e retornar True ou False com base na expressão.
True e False têm que ser digitados com a primeira letra maiúscula!
a = True #mostre o valor de a print(a) # exibe o tipo de dados de a print(type(a))
Veja esse exemplo no terminal do Python:
>>> a = True >>> print(a) True >>> type(a) <class 'bool'> >>> bool(a==False) False
Em bool(a==False) eu comparo se “a” é igual a falso, como a é verdadeiro ele retorna falso.
Conclusão
Lembre sempre que:
- itens dentro de [] formam uma lista que é mutável.
- itens dentro de () formam uma tupla que é imutável.
- itens dentro de {} formam um dicionário. Tem chave:valor.
- itens dentro de {} formam um conjunto. Não tem chave:valor
String é uma sequência de caracteres e e Boleando é um dado que aceita apenas true ou false como valores.
Até certo ponto, as listas Python são semelhantes aos arrays em C. Uma diferença entre eles é que todos os itens pertencentes a uma lista Python podem ser de tipos de dados diferentes, enquanto um array C pode armazenar elementos relacionados a um tipo de dados específico.
Comments on “Aprendendo Python por Conta Própria: O que São Dados e Quais os Tipos em Python?”