167 lines
29 KiB
Plaintext
167 lines
29 KiB
Plaintext
{
|
||
"cells": [
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": 1,
|
||
"id": "13714da7-099c-4820-9a4c-02bb3a0f2aad",
|
||
"metadata": {},
|
||
"outputs": [
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Запуск обработки данных с tqdm...\n"
|
||
]
|
||
},
|
||
{
|
||
"name": "stderr",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Обработка строк: 100%|\u001b[32m███████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████\u001b[0m| 1000/1000 [00:05<00:00, 169.78row/s]\u001b[0m\n"
|
||
]
|
||
},
|
||
{
|
||
"name": "stdout",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"\n",
|
||
"Обработка завершена!\n"
|
||
]
|
||
},
|
||
{
|
||
"name": "stderr",
|
||
"output_type": "stream",
|
||
"text": [
|
||
"Общий прогресс: 0%| | 0/5 [00:00<?, ?it/s]\n",
|
||
"Этап 1: 0%| | 0/100 [00:00<?, ?it/s]\u001b[A\n",
|
||
"Этап 1: 10%|██████████████████ | 10/100 [00:00<00:00, 91.48it/s]\u001b[A\n",
|
||
"Этап 1: 20%|████████████████████████████████████▏ | 20/100 [00:00<00:00, 91.39it/s]\u001b[A\n",
|
||
"Этап 1: 30%|██████████████████████████████████████████████████████▎ | 30/100 [00:00<00:00, 91.50it/s]\u001b[A\n",
|
||
"Этап 1: 40%|████████████████████████████████████████████████████████████████████████▍ | 40/100 [00:00<00:00, 91.38it/s]\u001b[A\n",
|
||
"Этап 1: 50%|██████████████████████████████████████████████████████████████████████████████████████████▌ | 50/100 [00:00<00:00, 91.72it/s]\u001b[A\n",
|
||
"Этап 1: 60%|████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 60/100 [00:00<00:00, 91.47it/s]\u001b[A\n",
|
||
"Этап 1: 70%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▋ | 70/100 [00:00<00:00, 91.24it/s]\u001b[A\n",
|
||
"Этап 1: 80%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▊ | 80/100 [00:00<00:00, 91.28it/s]\u001b[A\n",
|
||
"Этап 1: 90%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▉ | 90/100 [00:00<00:00, 91.83it/s]\u001b[A\n",
|
||
"Этап 1: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 100/100 [00:01<00:00, 91.82it/s]\u001b[A\n",
|
||
"Общий прогресс: 20%|███████████████████████████████████▏ | 1/5 [00:01<00:04, 1.10s/it]\u001b[A\n",
|
||
"Этап 2: 0%| | 0/100 [00:00<?, ?it/s]\u001b[A\n",
|
||
"Этап 2: 10%|██████████████████ | 10/100 [00:00<00:00, 93.49it/s]\u001b[A\n",
|
||
"Этап 2: 20%|████████████████████████████████████▏ | 20/100 [00:00<00:00, 92.26it/s]\u001b[A\n",
|
||
"Этап 2: 30%|██████████████████████████████████████████████████████▎ | 30/100 [00:00<00:00, 92.55it/s]\u001b[A\n",
|
||
"Этап 2: 40%|████████████████████████████████████████████████████████████████████████▍ | 40/100 [00:00<00:00, 91.98it/s]\u001b[A\n",
|
||
"Этап 2: 50%|██████████████████████████████████████████████████████████████████████████████████████████▌ | 50/100 [00:00<00:00, 91.01it/s]\u001b[A\n",
|
||
"Этап 2: 60%|████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 60/100 [00:00<00:00, 91.48it/s]\u001b[A\n",
|
||
"Этап 2: 70%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▋ | 70/100 [00:00<00:00, 91.42it/s]\u001b[A\n",
|
||
"Этап 2: 80%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▊ | 80/100 [00:00<00:00, 91.67it/s]\u001b[A\n",
|
||
"Этап 2: 90%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▉ | 90/100 [00:00<00:00, 91.75it/s]\u001b[A\n",
|
||
"Этап 2: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 100/100 [00:01<00:00, 91.85it/s]\u001b[A\n",
|
||
"Общий прогресс: 40%|██████████████████████████████████████████████████████████████████████▍ | 2/5 [00:02<00:03, 1.10s/it]\u001b[A\n",
|
||
"Этап 3: 0%| | 0/100 [00:00<?, ?it/s]\u001b[A\n",
|
||
"Этап 3: 10%|██████████████████ | 10/100 [00:00<00:00, 94.04it/s]\u001b[A\n",
|
||
"Этап 3: 20%|████████████████████████████████████▏ | 20/100 [00:00<00:00, 92.75it/s]\u001b[A\n",
|
||
"Этап 3: 30%|██████████████████████████████████████████████████████▎ | 30/100 [00:00<00:00, 92.43it/s]\u001b[A\n",
|
||
"Этап 3: 40%|████████████████████████████████████████████████████████████████████████▍ | 40/100 [00:00<00:00, 91.80it/s]\u001b[A\n",
|
||
"Этап 3: 50%|██████████████████████████████████████████████████████████████████████████████████████████▌ | 50/100 [00:00<00:00, 91.91it/s]\u001b[A\n",
|
||
"Этап 3: 60%|████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 60/100 [00:00<00:00, 91.83it/s]\u001b[A\n",
|
||
"Этап 3: 70%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▋ | 70/100 [00:00<00:00, 92.02it/s]\u001b[A\n",
|
||
"Этап 3: 80%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▊ | 80/100 [00:00<00:00, 91.79it/s]\u001b[A\n",
|
||
"Этап 3: 90%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▉ | 90/100 [00:00<00:00, 92.07it/s]\u001b[A\n",
|
||
"Этап 3: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 100/100 [00:01<00:00, 91.84it/s]\u001b[A\n",
|
||
"Общий прогресс: 60%|█████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 3/5 [00:03<00:02, 1.10s/it]\u001b[A\n",
|
||
"Этап 4: 0%| | 0/100 [00:00<?, ?it/s]\u001b[A\n",
|
||
"Этап 4: 10%|██████████████████ | 10/100 [00:00<00:00, 95.57it/s]\u001b[A\n",
|
||
"Этап 4: 20%|████████████████████████████████████▏ | 20/100 [00:00<00:00, 92.96it/s]\u001b[A\n",
|
||
"Этап 4: 30%|██████████████████████████████████████████████████████▎ | 30/100 [00:00<00:00, 92.42it/s]\u001b[A\n",
|
||
"Этап 4: 40%|████████████████████████████████████████████████████████████████████████▍ | 40/100 [00:00<00:00, 92.03it/s]\u001b[A\n",
|
||
"Этап 4: 50%|██████████████████████████████████████████████████████████████████████████████████████████▌ | 50/100 [00:00<00:00, 91.90it/s]\u001b[A\n",
|
||
"Этап 4: 60%|████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 60/100 [00:00<00:00, 91.83it/s]\u001b[A\n",
|
||
"Этап 4: 70%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▋ | 70/100 [00:00<00:00, 92.30it/s]\u001b[A\n",
|
||
"Этап 4: 80%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▊ | 80/100 [00:00<00:00, 92.39it/s]\u001b[A\n",
|
||
"Этап 4: 90%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▉ | 90/100 [00:00<00:00, 92.15it/s]\u001b[A\n",
|
||
"Этап 4: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 100/100 [00:01<00:00, 92.07it/s]\u001b[A\n",
|
||
"Общий прогресс: 80%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▊ | 4/5 [00:04<00:01, 1.09s/it]\u001b[A\n",
|
||
"Этап 5: 0%| | 0/100 [00:00<?, ?it/s]\u001b[A\n",
|
||
"Этап 5: 10%|██████████████████ | 10/100 [00:00<00:00, 94.20it/s]\u001b[A\n",
|
||
"Этап 5: 20%|████████████████████████████████████▏ | 20/100 [00:00<00:00, 93.14it/s]\u001b[A\n",
|
||
"Этап 5: 30%|██████████████████████████████████████████████████████▎ | 30/100 [00:00<00:00, 92.40it/s]\u001b[A\n",
|
||
"Этап 5: 40%|████████████████████████████████████████████████████████████████████████▍ | 40/100 [00:00<00:00, 92.30it/s]\u001b[A\n",
|
||
"Этап 5: 50%|██████████████████████████████████████████████████████████████████████████████████████████▌ | 50/100 [00:00<00:00, 92.35it/s]\u001b[A\n",
|
||
"Этап 5: 60%|████████████████████████████████████████████████████████████████████████████████████████████████████████████▌ | 60/100 [00:00<00:00, 92.47it/s]\u001b[A\n",
|
||
"Этап 5: 70%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▋ | 70/100 [00:00<00:00, 92.34it/s]\u001b[A\n",
|
||
"Этап 5: 80%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▊ | 80/100 [00:00<00:00, 92.37it/s]\u001b[A\n",
|
||
"Этап 5: 90%|██████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████▉ | 90/100 [00:00<00:00, 92.20it/s]\u001b[A\n",
|
||
"Этап 5: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 100/100 [00:01<00:00, 92.47it/s]\u001b[A\n",
|
||
"Общий прогресс: 100%|████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 5/5 [00:05<00:00, 1.09s/it]\u001b[A\n"
|
||
]
|
||
}
|
||
],
|
||
"source": [
|
||
"import pandas as pd\n",
|
||
"import numpy as np\n",
|
||
"from tqdm import tqdm\n",
|
||
"import time\n",
|
||
"\n",
|
||
"# 1. Подготовка данных (создаем DataFrame на 1000 строк)\n",
|
||
"df = pd.DataFrame({\n",
|
||
" 'ID': range(1000),\n",
|
||
" 'Data': np.random.randn(1000)\n",
|
||
"})\n",
|
||
"\n",
|
||
"print(\"Запуск обработки данных с tqdm...\")\n",
|
||
"\n",
|
||
"# 2. Использование tqdm для итерации по DataFrame (iterrows)\n",
|
||
"# Добавляем кастомную стилизацию через аргументы:\n",
|
||
"# desc — описание процесса\n",
|
||
"# unit — единица измерения\n",
|
||
"# colour — цвет бара (поддерживается в современных терминалах/ноутбуках)\n",
|
||
"for index, row in tqdm(df.iterrows(), \n",
|
||
" total=df.shape[0], \n",
|
||
" desc=\"Обработка строк\", \n",
|
||
" unit=\"row\", \n",
|
||
" colour=\"green\"):\n",
|
||
" \n",
|
||
" # Симуляция сложной обработки данных\n",
|
||
" time.sleep(0.005) \n",
|
||
" _ = row['Data'] ** 2\n",
|
||
"\n",
|
||
"print(\"\\nОбработка завершена!\")\n",
|
||
"\n",
|
||
"# 3. Пример с вложенным циклом и кастомным описанием\n",
|
||
"for i in tqdm(range(5), desc=\"Общий прогресс\", position=0):\n",
|
||
" for j in tqdm(range(100), desc=f\"Этап {i+1}\", position=1, leave=False):\n",
|
||
" time.sleep(0.01)"
|
||
]
|
||
},
|
||
{
|
||
"cell_type": "code",
|
||
"execution_count": null,
|
||
"id": "834b60ab-68b9-48ed-9223-3b2a1b3b186e",
|
||
"metadata": {},
|
||
"outputs": [],
|
||
"source": []
|
||
}
|
||
],
|
||
"metadata": {
|
||
"kernelspec": {
|
||
"display_name": "Python 3 (ipykernel)",
|
||
"language": "python",
|
||
"name": "python3"
|
||
},
|
||
"language_info": {
|
||
"codemirror_mode": {
|
||
"name": "ipython",
|
||
"version": 3
|
||
},
|
||
"file_extension": ".py",
|
||
"mimetype": "text/x-python",
|
||
"name": "python",
|
||
"nbconvert_exporter": "python",
|
||
"pygments_lexer": "ipython3",
|
||
"version": "3.13.5"
|
||
}
|
||
},
|
||
"nbformat": 4,
|
||
"nbformat_minor": 5
|
||
}
|