Это невозможно, потому что вы не можете получить возвращаемое значение функции, выполняемой в другом потоке.
Чтобы реализовать желаемое поведение, вы должны сделать FibonacciThreads
вызываемым объектом, который сохраняет результат как переменную-член:
class FibonacciThreads(object):
def __init__(self):
self.result = None
def __call__(self, n):
# implement logic here as above
# instead of a return, store the result in self.result
Вы можете использовать экземпляры этого класса как функции:
fib = FibonacciThreads() # create instance
fib(23) # calculate the number
print fib.result # retrieve the result
Обратите внимание, что, как я сказал в своем комментарии, это не очень разумное использование потоков.Если это действительно ваше задание, то оно плохое.