Как достать значение переменной из другой фукнции?
Выложили код кусками и всех запутали. Но по аргументам видно что это методы класса
Ошибка в том что вы забыли добавить объект инстанса класса self в вызове getDirectory
Что это такое объяснено тут Что такое self в Python?

>>> class A:
...   def __init__(self):
...     testf(1)
...   def testf(self, x):
...     print(x)
...
>>> A()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 3, in __init__
NameError: name 'testf' is not defined
>>> class A:
...   def __init__(self):
...     self.testf(1)
...   def testf(self, x):
...     print(x)
...
>>> A()
1

Ну и конечно неплохо было бы ознакомиться с пеп8
Проблема в том что  ты создаешь функцию next внутри функции getDir котораю и вызывает функция next