Como o ambiente de execução do Python gerencia o ciclo de vida dos objetos em memória. Em outras palavras, como o Python sabe quando deve desalocar o espaço de um objeto que não está sendo mais usado da memória e quem faz este trabalho?
Em aplicações maiores e que exigem uma grande uma alta atividade de processamento e que trabalhem com um grande volume de dados, zelar pelos recursos computacionais é sempre bem-vindo. Porque devemos ou não devemos confiar nesse tipo de abstração provida pelo conjunto formado pela linguagem e pelo ambiente de execução em uma aplicação Python?
Ex: No mundo Java (para versões mais antigas de JVM) tínhamos o famoso GC (Garbage Collector). O que seria equivalente no universo do Python?