I am using Python (Canopy) extensively for Earth science application. Because my application is memory consuming, I am trying find way to erase variable that I don't need any more in my programs, I tried to use del command to erase the variable memory, but I found that space used by Canopy is still the same. Any ideas about how to erase variable completely from the memory. thanks
Method 1: Delete Variable using del or None from Memory. Method 2: Delete List or Dictionary using del or None from Memory. Method 3: Delete a Function using del or None from Memory. Method 4: Delete User Defined Objects with dir() and globals()
The relevant part is, yes, they are. For the purposes of a programmer, user, and everything else except the machine itself, all variables and code of your program are stored in RAM.
The unset() function unsets a variable.
On Replacement or Execution, right click the variable you want to delete, and select Delete.
You can't manually nuke an object from your memory in Python!
The Python Garbage Collector (GC) will automatically free up memory of objects that have no existing references any more (implementation details differ per interpreter). It's periodically checking for abandoned objects in background without your interaction.
So to get an object recycled, you have to eliminate all references to it by assigning a different value (e.g. None) to all variables that pointed to the object. You can also delete a variable name using the del
statement, but as you already noticed, this only deletes the name with the reference, but not the object and its data itself. Only the GC can do that.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With