Como usar a função id() para verificar o endereço de memória de uma variável?

A função id() no Python retorna o identificador único de um objeto, que corresponde ao seu endereço de memória.

Como usar a função id() para verificar o endereço de memória de uma variável?

O Python gerencia a memória automaticamente, atribuindo endereços únicos a cada objeto criado. A função id() permite acessar esse identificador para verificar onde um objeto está armazenado na memória.

Obtendo o endereço de memória de uma variável

x = 10  
print(f"O endereço de memória de x é: {id(x)}")  

Cada número inteiro pode compartilhar o mesmo identificador se for imutável e reutilizado internamente pelo Python.

Comparando endereços de memória

A função id() também pode ser usada para verificar se duas variáveis apontam para o mesmo objeto na memória.

a = 100  
b = 100  
print(id(a) == id(b))  # Saída: True  

Isso acontece porque Python reutiliza pequenos inteiros para otimizar a memória.

Endereços de memória em estruturas mutáveis

lista1 = [1, 2, 3]  
lista2 = lista1  
print(id(lista1) == id(lista2))  # Saída: True  

lista2.append(4)  
print(lista1)  # Saída: [1, 2, 3, 4]  

Aqui, lista1 e lista2 compartilham o mesmo endereço, pois lista2 é apenas uma referência ao mesmo objeto.

A função id() é útil para entender a alocação de memória no Python e como objetos são gerenciados pelo interpretador.

Algumas aplicações:

  • Depuração de código para verificar compartilhamento de objetos.
  • Compreensão do gerenciamento de memória pelo Python.
  • Evitar efeitos colaterais ao modificar objetos mutáveis.
  • Otimização de desempenho e uso eficiente de recursos.

Dicas para quem está começando

  • Use id() para entender a reutilização de objetos no Python.
  • Variáveis mutáveis compartilham o mesmo endereço se referenciadas diretamente.
  • Para criar cópias independentes, utilize copy.deepcopy() para estruturas aninhadas.
  • Não confunda id() com ponteiros; no Python, o gerenciamento de memória é automático.

Contribuições de Pedro Vasconcellos

Compartilhe este tutorial: Como usar a função id() para verificar o endereço de memória de uma variável

Compartilhe este tutorial

Continue aprendendo:

O que é o Zen of Python e como acessá-lo no terminal

O Zen of Python é um conjunto de princípios que definem a filosofia da linguagem Python, estabelecendo diretrizes para escrever um código mais limpo e legível.

Tutorial anterior

Como arredondar um número em Python

O arredondamento de números no Python pode ser feito de diversas formas, sendo a função round() a mais comum.

Próximo tutorial