I want to create a simple program that has two loops and I can change between them by pressing a physical button, like a mode selector.

MODE 1: Heating  

MODE 2: Cooling

```
import RPi.GPIO as GPIO
import time

GPIO.setup(21, GPIO.IN, pull_up_down=GPIO.PUD_UP)

mode = 'heating'

def my_callback(channel):
    if mode == 'heating'
        mode = 'cooling'
        print 'turned on cooling'
    elif mode == 'cooling'
        mode = 'heating'
        print 'turned on heating'

GPIO.add_event_detect(21, GPIO.RISING, callback=my_callback)

while mode == 'heating'
    print 'I am heating'
    time.sleep(1.0)

while mode == 'cooling'
    print 'I am cooling'
    time.sleep(1.0)

```

When I run this code it starts with the heating mode, when I push the button the callback runs but the variable does not change and the heating loop is still running.