Como compartilhar uma variável entre dois tópicos

Usando o Python 2.7.3 no Windows.

Como posso compartilhar uma variável?num entre threads, de modo que, apósnum é quadrado, é impresso?

Percebi que preciso entender como os threads funcionam, mas os docs não têm muito, e também não encontrei nada aqui.
Então, alguém poderia explicar como os threads funcionam e como compartilhar variáveis ​​entre 2 threads?

Meu código (continua imprimindo2)

import threading
def func1(num):
    while num < 100000000:
        num =  num**2
def func2(num):
    while num < 100000000:
        print num,
num = 2
thread1 = threading.Thread(target=func1,args=(num,))
thread2 = threading.Thread(target=func2,args=(num,))
print 'setup'
thread1.start()
thread2.start()

questionAnswers(1)

yourAnswerToTheQuestion