Em Python, variáveis são nomes que fazem referência a objetos na memória. O processo de atribuição é realizado pelo operador =, que liga um nome a um valor ou estrutura de dados. Esse mecanismo é fundamental para manipulação de listas e dicionários, que são tipos mutáveis. Isso significa que uma alteração feita em uma variável pode refletir em outra, caso ambas apontem para o mesmo objeto.
Quando unimos listas e dicionários, conseguimos construir estruturas semelhantes a um banco de dados de documentos (como o MongoDB), em que cada elemento é um registro com múltiplos atributos.
Exemplo simples:
x = 10
nome = "Ana"
x aponta para o número inteiro 10, enquanto nome aponta para a string "Ana".
Em estruturas compostas, como listas e dicionários, a atribuição cria uma referência.
a = [1, 2, 3]
b = a
b[0] = 99
print(a) # [99, 2, 3]
Aqui, a e b compartilham a mesma lista.
Para evitar esse comportamento:
copia = a[:] # cópia rasa
copia2 = list(a) # alternativa
Uma lista é uma sequência ordenada de elementos.
numeros = [1, 2, 3]
nomes = ["Ana", "Carlos", "Bianca"]