Gerenciamento de Memória Python

Neeraj Dana em codeburst Seguir Jun 26 · 3 min ler

Neste artigo, veremos como a memória é atribuída a variáveis em python

Ao final desta lição, você será capaz de responder algumas das
perguntas feitas em python.

1.) Como o python atribui memória às variáveis?

2.) o que é uma contagem de referência

Memória

podemos pensar em memória como uma série de pequenos pedaços em que cada peça tem um
tamanho fixo e um endereço de memória exclusivo que depende de 64 bits ou 32 bits
sistema operacional

Agora, quando criamos uma variável em python vamos dizer x e atribuir um valor 9658 a ele

em seguida, internamente, o que ele vai fazer é armazenar o valor que é 9658 em um dos
o slot de memória (também conhecido como memória heap) e o identificador que é x é
nada mais do que a referência a esse endereço de memória

então o ponto é o X não é igual a 9658 é uma referência para a memória
endereço onde 9658 reside

Agora, como eu disse, o slot de memória tem um tamanho limitado

Então, se temos um objeto que é maior em tamanho do que o slot vamos dizer

temos uma lista de 2000 elementos

 lst = [i for i in range(0,2000)] 

então, nesse caso, a memória que os dados fluirão de um slot para outro se o
o tamanho dos dados é maior

Nota: não importa quantos slots são usados para armazenar dados no identificador
(lst no nosso caso) sempre apontará para o endereço do primeiro slot de memória onde
o armazenamento de dados iniciado

Agora, se X é apenas um ponteiro, então podemos atribuir este ponteiro para outro
identificador também certo

o código acima não irá gerar uma nova variável Y com valor 9658

em vez disso, estamos pedindo a Y para ir em frente e apontar para o mesmo endereço de memória onde X
está apontando para.

Agora, para provar isso, temos uma função em python que é id (), que retorna o
endereço de memória do objeto na base 10, e podemos converter essa base 10 para
hexadecimal por hex ()

 X=9658 pint(hex(id(X))) Y=X pint(hex(id(Y))) 

por isso, se você executar este snippet, obteremos o mesmo endereço de memória

Contagem de referência

Contagem de referência é a contagem de identificadores apontando para uma única memória
endereço ou objeto tão

a contagem de referência de um endereço de memória para o qual x está apontando é 2 no nosso caso
se atribuirmos mais uma variável, então ela se tornará 3

Obrigado por ler isto