Я использовал tkinter askdirectory, чтобы сделать то же самое, и он отлично работает.
Может быть, изменение кода поможет?
from tkinter import filedialog as fd
directory=fd.askdirectory()
Теперь каталог является переменной и может использоватьсядля обоих файлов чтения / записи.
Для записи в файл в этом каталоге вы можете указать имя файла, добавив строку имени файла в каталог, используя os.path.join()
import os
fileout = os.path.join(directory + '/<filename>.<ext>')