Python 3 - Tipos de Variáveis

As variáveis ​​nada mais são do que locais de memória reservados para armazenar valores. Isso significa que quando você cria uma variável, você reserva algum espaço na memória.

Com base no tipo de dado de uma variável, o interpretador aloca memória e decide o que pode ser armazenado na memória reservada. Portanto, ao atribuir diferentes tipos de dados às variáveis, você pode armazenar inteiros, decimais ou caracteres nessas variáveis.

Atribuição de valores a variáveis

Variáveis ​​Python não precisam de declaração explícita para reservar espaço de memória. A declaração acontece automaticamente quando você atribui um valor a uma variável. O sinal de igual (=) é usado para atribuir valores às variáveis.

O operando à esquerda do operador = é o nome da variável e o operando à direita do operador = é o valor armazenado na variável. Por exemplo -

#!/usr/bin/python3

counter = 100          # An integer assignment
miles   = 1000.0       # A floating point
name    = "John"       # A string

print (counter)
print (miles)
print (name)

Aqui, 100, 1000,0 e "John" são os valores atribuídos às variáveis ​​counter, miles e name, respectivamente. Isso produz o seguinte resultado -

100
1000.0
John

Atribuição múltipla

Python permite que você atribua um único valor a várias variáveis ​​simultaneamente.

Por exemplo -

a = b = c = 1

Aqui, um objeto inteiro é criado com o valor 1, e todas as três variáveis ​​são atribuídas ao mesmo local de memória. Você também pode atribuir vários objetos a várias variáveis. Por exemplo -

a, b, c = 1, 2, "john"

Aqui, dois objetos inteiros com valores 1 e 2 são atribuídos às variáveis ​​aeb, respectivamente, e um objeto string com o valor "john" é atribuído à variável c.

Tipos de dados padrão

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 padrão que são usados ​​para definir as operações possíveis neles e o método de armazenamento para cada um deles.

Python tem cinco tipos de dados padrão -

  • Numbers
  • String
  • List
  • Tuple
  • Dictionary

Números Python

Os tipos de dados numéricos armazenam valores numéricos. Objetos de número são criados quando você atribui um valor a eles. Por exemplo -

var1 = 1
var2 = 10

Você também pode excluir a referência a um objeto de número usando o deldeclaração. A sintaxe dodel declaração é -

del var1[,var2[,var3[....,varN]]]]

Você pode excluir um único objeto ou vários objetos usando o del declaração.

Por exemplo -

del var
del var_a, var_b

Python oferece suporte a três tipos numéricos diferentes -

  • int (inteiros com sinal)
  • float (valores reais de ponto flutuante)
  • complexo (números complexos)

Todos os inteiros em Python3 são representados como inteiros longos. Portanto, não há nenhum tipo de número separado, contanto.

Exemplos

Aqui estão alguns exemplos de números -

int flutuador complexo
10 0,0 3,14j
100 15,20 45.j
-786 -21,9 9.322e-36j
080 32,3 + e18 .876j
-0490 -90. -.6545 + 0J
-0x260 -32.54e100 3e + 26J
0x69 70.2-E12 4.53e-7j

Um número complexo consiste em um par ordenado de números reais de ponto flutuante denotados por x + yj, onde xey são números reais ej é a unidade imaginária.

Python Strings

Strings em Python são identificadas como um conjunto contíguo de caracteres representados entre aspas. Python permite pares de aspas simples ou duplas. Subconjuntos de strings podem ser obtidos usando o operador slice ([] e [:]) com índices começando em 0 no início da string e trabalhando de -1 até o final.

O sinal de mais (+) é o operador de concatenação de string e o asterisco (*) é o operador de repetição. Por exemplo -

#!/usr/bin/python3

str = 'Hello World!'

print (str)          # Prints complete string
print (str[0])       # Prints first character of the string
print (str[2:5])     # Prints characters starting from 3rd to 5th
print (str[2:])      # Prints string starting from 3rd character
print (str * 2)      # Prints string two times
print (str + "TEST") # Prints concatenated string

Isso produzirá o seguinte resultado -

Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST

Listas Python

As listas são os mais versáteis dos tipos de dados compostos do Python. Uma lista contém itens separados por vírgulas e colocados entre colchetes ([]). Até certo ponto, as listas são semelhantes às matrizes em C. Uma das diferenças entre elas é que todos os itens pertencentes a uma lista podem ser de tipos de dados diferentes.

Os valores armazenados em uma lista podem ser acessados ​​usando o operador de fatia ([] e [:]) com índices começando em 0 no início da lista e trabalhando para terminar -1. O sinal de mais (+) é o operador de concatenação de lista e o asterisco (*) é o operador de repetição. Por exemplo -

#!/usr/bin/python3

list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']

print (list)          # Prints complete list
print (list[0])       # Prints first element of the list
print (list[1:3])     # Prints elements starting from 2nd till 3rd 
print (list[2:])      # Prints elements starting from 3rd element
print (tinylist * 2)  # Prints list two times
print (list + tinylist) # Prints concatenated lists

Isso produz o seguinte resultado -

['abcd', 786, 2.23, 'john', 70.200000000000003]
abcd
[786, 2.23]
[2.23, 'john', 70.200000000000003]
[123, 'john', 123, 'john']
['abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john']

Python Tuples

Uma tupla é outro tipo de dados de sequência semelhante à lista. Uma tupla consiste em vários valores separados por vírgulas. Ao contrário das listas, no entanto, as tuplas são colocadas entre parênteses.

A principal diferença entre listas e tuplas é - As listas são colocadas entre colchetes ([]) e seus elementos e tamanho podem ser alterados, enquanto as tuplas são colocadas entre parênteses (()) e não podem ser atualizadas. Tuplas podem ser consideradas comoread-onlylistas. Por exemplo -

#!/usr/bin/python3

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
tinytuple = (123, 'john')

print (tuple)           # Prints complete tuple
print (tuple[0])        # Prints first element of the tuple
print (tuple[1:3])      # Prints elements starting from 2nd till 3rd 
print (tuple[2:])       # Prints elements starting from 3rd element
print (tinytuple * 2)   # Prints tuple two times
print (tuple + tinytuple) # Prints concatenated tuple

Isso produz o seguinte resultado -

('abcd', 786, 2.23, 'john', 70.200000000000003)
abcd
(786, 2.23)
(2.23, 'john', 70.200000000000003)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.200000000000003, 123, 'john')

O código a seguir é inválido com tupla porque tentamos atualizar uma tupla, o que não é permitido. Caso semelhante é possível com listas -

#!/usr/bin/python3

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
list = [ 'abcd', 786 , 2.23, 'john', 70.2  ]
tuple[2] = 1000    # Invalid syntax with tuple
list[2] = 1000     # Valid syntax with list

Dicionário Python

Os dicionários do Python são do tipo tabela hash. Eles funcionam como matrizes associativas ou hashes encontrados em Perl e consistem em pares de valores-chave. Uma chave de dicionário pode ser quase qualquer tipo Python, mas geralmente são números ou strings. Os valores, por outro lado, podem ser qualquer objeto Python arbitrário.

Os dicionários são colocados entre colchetes ({}) e os valores podem ser atribuídos e acessados ​​usando colchetes ([]). Por exemplo -

#!/usr/bin/python3

dict = {}
dict['one'] = "This is one"
dict[2]     = "This is two"

tinydict = {'name': 'john','code':6734, 'dept': 'sales'}

print (dict['one'])       # Prints value for 'one' key
print (dict[2])           # Prints value for 2 key
print (tinydict)          # Prints complete dictionary
print (tinydict.keys())   # Prints all the keys
print (tinydict.values()) # Prints all the values

Isso produz o seguinte resultado -

This is one
This is two
{'name': 'john', 'dept': 'sales', 'code': 6734}
dict_keys(['name', 'dept', 'code'])
dict_values(['john', 'sales', 6734])

Os dicionários não têm conceito de ordem entre os elementos. É incorreto dizer que os elementos estão "fora de ordem"; eles são simplesmente desordenados.

Conversão de Tipo de Dados

Às vezes, você pode precisar realizar conversões entre os tipos integrados. Para converter entre tipos, você simplesmente usa os nomes dos tipos como uma função.

Existem várias funções integradas para realizar a conversão de um tipo de dados para outro. Essas funções retornam um novo objeto que representa o valor convertido.

Sr. Não. Descrição da função
1

int(x [,base])

Converte x em um inteiro. A base especifica a base se x for uma string.

2

float(x)

Converte x em um número de ponto flutuante.

3

complex(real [,imag])

Cria um número complexo.

4

str(x)

Converte o objeto x em uma representação de string.

5

repr(x)

Converte o objeto x em uma string de expressão.

6

eval(str)

Avalia uma string e retorna um objeto.

7

tuple(s)

Converte s em uma tupla.

8

list(s)

Converte s em uma lista.

9

set(s)

Converte s em um conjunto.

10

dict(d)

Cria um dicionário. d deve ser uma sequência de tuplas (chave, valor).

11

frozenset(s)

Converte s em um conjunto congelado.

12

chr(x)

Converte um número inteiro em um caractere.

13

unichr(x)

Converte um número inteiro em um caractere Unicode.

14

ord(x)

Converte um único caractere em seu valor inteiro.

15

hex(x)

Converte um número inteiro em uma string hexadecimal.

16

oct(x)

Converte um número inteiro em uma string octal.