Last active
June 25, 2025 21:25
-
-
Save MikyPo/f5722ae8afe75cc561ebccb1dce45930 to your computer and use it in GitHub Desktop.
progress bar loading file
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| from openpyxl import load_workbook | |
| from tqdm import tqdm | |
| # Путь к файлу | |
| filename = 'data.xlsx' | |
| # Загружаем книгу | |
| wb = load_workbook(filename, read_only=True) | |
| # Возвращает активный (выбранный по умолчанию) лист Excel-файла, | |
| # то же самое, что вручную выбрать первый лист через wb['Sheet1'] | |
| # (!) В Excel может быть несколько листов, active выбирает тот, который был активен при последнем сохранении файла | |
| ws = wb.active | |
| # Получаем количество строк (примерно) | |
| # (!) max_row возвращает номер последней строки, где Excel зафиксировал какие-либо данные (даже если это пустая ячейка с форматом) | |
| # (!) В реальности данных может быть меньше/больше, если: | |
| # Есть пустые строки в середине таблицы | |
| # В файле есть скрытые | |
| max_row = ws.max_row | |
| data = [] # Сюда складываем все данные | |
| columns = None # Инициация переменной для заголовков | |
| with tqdm(total=max_row, desc='Чтение Excel') as pbar: | |
| for i, row in enumerate(ws.iter_rows(values_only=True)): | |
| if i == 0: | |
| columns = row # Первая строка — заголовки | |
| else: | |
| data.append(row) # Добавляем строку | |
| pbar.update(1) # Увеличение прогресс-бара на 1 шаг |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment