I agree that is how python is implemented, and from a memory perspective, this is not needed. What I was talking about was more from a conceptual resource point of view, and not just memory as a resource.
Consider a generator, you can have many different bindings to the object, but when it is exhausted, it may not make sense to access that that generator though one of the other bindings. Of course accessing it can raise an exception, or you can have objects you can ask of the resources are still "valid" for whatever the resource is (in this case a generator), rebind a name after a function call with additional checks, etc.
It would be convenient if you could mark in source code that you intended a resource to be "moved" and any further access through other bindings are not what was intended. This would help catch logic bugs during type checking, instead of hitting this issue at runtime.