Deseja excluir uma variável, não é?
ok, acho que tenho uma melhor ideia alternativa para a resposta @bnul:
Você pode excluir nomes individuais com del
:
del x
ou você pode removê-los do objeto globals ():
for name in dir():
if not name.startswith('_'):
del globals()[name]
Este é apenas um exemplo de loop; defensivamente, apenas exclui nomes que não começam com um sublinhado, assumindo (sem razão) que você usou apenas nomes sem sublinhado no início do intérprete. Você pode usar uma lista de nomes codificada para manter (lista de permissões) se realmente quiser ser aprofundada. Não há nenhuma função interna para fazer a limpeza para você, além de sair e reiniciar o intérprete.
Os módulos que você importou (import os) permanecerão importados porque são referenciados por sys.modules; as importações subsequentes reutilizarão o objeto do módulo já importado. Você simplesmente não terá uma referência a eles no seu namespace global atual.
Por favor, reconsidere esta resposta!