This is kind of a python question, but is dependent on the Pi specific RPi.GPIO.
The GPIO.PWM creates a thread which is responsible for the PWM operation.
This stores data in a structure, which is (eventually) destroyed when you call PWM.stop().
You don't do this, but it will happen when the variables are garbage collected on function exit.
Effectively the ...