#python #pandas
#python #pandas
Вопрос:
На данный момент у меня есть папка, содержащая различные файлы, над которыми мне нужно запустить некоторый код и преобразовать в csv. Я пытаюсь посмотреть, есть ли способ проверить имя файла в папке, а затем выполнить соответствующий код. Я пытался:
for xlsb_file in pathlib.Path('Directory Path').glob('Filename*.xlsb'):
RUN CODE
convert dataset into a csv
По какой-то причине этот код, похоже, выполняется без каких-либо ошибок, но файл csv не выводится. В идеале я хотел бы, чтобы при запуске кода код определял имя файла, запускал соответствующий код, а затем выдавал csv.
Есть ли какой-нибудь способ сделать это? Любая помощь приветствуется!
Комментарии:
1. Может ли решением быть указание имени каталога через аргумент командной строки?
2. Конечно, вы можете проанализировать имена файлов и предпринять соответствующие действия. Какой у вас вопрос по этому поводу?
Ответ №1:
Вы можете попробовать:
import os
def convert_to_csv(filename):
"""this function converts and save a csv version of the file"""
def convert_this_file(filename):
"""this functions checks if a file should be converted"""
return filename.endswith('.xlsb')
for root, folders, files in os.walk('Directory Path'):
for file in files:
filename = os.path.join(root, file)
if convert_this_file(filename):
convert_to_csv(filename)
break
Удалите ‘break’, если вы хотите, чтобы код рекурсивно сканировал подкаталоги