Итак, я запускаю скрипт, который получает имена всех файлов в каталоге, используя os.walk и os.path.
Затем эти имена файлов записываются в CSV с использованием «open» и «newline».
Очевидно, что в готовом csv все специальные символы, особенно ä, ü, ö, единственные, о которых я забочусь, полностью запутались.
Я уже передал «encoding =‘ UTF-8 ’» в «write» и установил языковой стандарт в начале скрипта на немецкий.
Я просто предполагаю, что пути сохраняются как перепутанные строки с помощью os.walk и os.path, и поэтому мой подход не помог решить проблему.
Так как же заставить эти команды возвращать строки с правильной кодировкой символов?
Спасибо заранее и наилучшими пожеланиями.
Настройка языка:
import locale
locale.setlocale(locale.LC_ALL, 'de_DE')
и рабочий код:
for root, dirs, files in os.walk(PATH):
for file in files:
if not file.startswith('.'):
filepath = os.path.join(root, file)
if os.path.isfile(filepath):
csv_f.append([file])
with open("table.csv", 'w', encoding='UTF-8', newline='') as c:
writer = csv.writer(c)
writer.writerows(csv_f)
c.close()