Приведенный ниже код решит вашу проблему:
import os
from glob import glob
import pandas as pd
f_mask = r'path\*.xlsx' ## The folder path where your Example.xlsx is stored
df = \
pd.concat([df.assign(file=os.path.splitext(os.path.basename(f))[0],
sheet=sheet)
for f in glob(f_mask)
for sheet, df in pd.read_excel(f, sheet_name=None).items()],
ignore_index=True)
Код работает следующим образом:
- Проверьте базовую папку и возьмите все файлы .xlsx в ней
- Чтение файлов по одному
- Создание двух дополнительных столбцов, один для имени файла, другой для имени листа
Это решение будет работать, если вы хотите выполнить упражнениедля более 1 файла .xlsx