Just some additional information about the python del-statement:
The del-statement doesn't really delete! It removes a name from a python namespace. A python name always refers to a python object. If the name is the only one refering a specific object that object might be deleted sooner or later (usually sooner, but there are exceptions).
In code del an_object is pretty much the same as an_object = None except that you get a name error if you try to use the name an_object before binding it to something else first.
Further: Even if an object is deleted it doesn't mean that an underlying resource (e.g. a file) is removed.