В настоящее время я читаю все файлы Excel и добавляю лист данных в массив из данного каталога. Проблема заключается в том, что некоторые файлы Excel в каталоге на самом деле не должны быть там и не содержат лист «данных». Затем программа ломается всякий раз, когда сталкивается с таким случаем. Мой обходной путь - печать имени файла перед его добавлением, а затем удаление файла вручную и повторный запуск сценария. Я попытался создать функцию Sheet_check, как показано ниже, хотя это значительно замедлило время выполнения и также не сработало, как предполагалось.
В: Если существует простой / эффективный метод добавления только файла Excel, если существует определенный лист c
read_files = glob.glob(os.path.join(file_path, "*.xlsx"))
file_array = []
for files in read_files:
#Remove_password_xlsx(files, password)
#if Sheet_check(files) == False:
#read_files.remove(files)
print(files)
data = pd.read_excel(files, 'Data')
file_array.append(data)
Не работает :
def Sheet_check(filename):
bAvailable = False
book = load_workbook(filename)
sheets = book.sheetnames
for sheet in sheets:
if sheet.upper() == "DATA":
bAvailable = True
break
return bAvailable