Специальные символы на os.walk и открывают новую строку - PullRequest
0 голосов
/ 31 мая 2019

Итак, я запускаю скрипт, который получает имена всех файлов в каталоге, используя 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()       

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...