Acessando a variável de uma função a partir de outra função

from threading import Thread
import time

def print_k():
    while true:
        if main.k % 2 == 1: # ditto
            print(main.k, "is even.") # <-- my problem is HERE ( Ignore all the other stuff )
        time.sleep(2)

def main():
    k = 1
    while k != 200:
        k += 1
        print k
        time.sleep(0.5)

if __name__ == '__main__':
    Thread(target=print_k).start()
    Thread(target=main).start()

neste script (apenas exemplo, ignore todas as funcionalidades realistas) Estou tentando executarmain(), que soma até 200 e imprime, e emprint_keu estou imprimindomainvariável de k. Eu tenho uma exceção levantada, sem surpresa, e estou querendo saber como posso acessar a variável de uma função separada a partir de uma função diferente (ambas estão sendo executadas ao mesmo tempo, a propósito, daí o módulo Threading).

questionAnswers(1)

yourAnswerToTheQuestion