Я думаю, проблема была в csv writer-е, надо внимательно изучить, как он работает внутри. Мне лень его изучать, в данном случае проще собрать элементы списка через «перевод строки» в одну длинную строку и всё разом записать в файл.
import os
root_path = "testfolder"
directory = []
for root, dirs, files in os.walk(root_path):
for name in files:
directory.append(os.path.join(root, name))
with open('DIR_Geo.csv', 'w', encoding='utf-8') as f:
f.write('\n'.join(directory))
Это костыль, но в данном случае, когда мы элементы списка формируем из
os
, и мы понимаем, что в них не попадут какие-нибудь специальные символы вроде переводов строки, табуляций и т.п., то ничего страшного произойти не должно.