Ноутбуки в Google Colab¶
Google Colab запускає Jupyter-ноутбуки просто в браузері: нічого встановлювати не треба, потрібен лише Google-акаунт.
Як відкрити ноутбук уроку¶
Спосіб 1 — кнопка. У першій клітинці кожного ноутбука (і поруч із посиланнями на ноутбуки в книзі) є кнопка . Натисни її, і ноутбук відкриється в Colab.
Спосіб 2 — адреса вручну. Відкрий ноутбук на GitHub і в адресі заміни https://github.com/ на https://colab.research.google.com/github/:
https://github.com/NikoriakViktot/PY-Course-Victor-Nikoriak-22-09-2026/blob/main/module_1/lessons/lesson_03_variables_and_data_types/note_lesson_variables.ipynb
https://colab.research.google.com/github/NikoriakViktot/PY-Course-Victor-Nikoriak-22-09-2026/blob/main/module_1/lessons/lesson_03_variables_and_data_types/note_lesson_variables.ipynb
Спосіб 3 — із самого Colab. File → Open notebook → вкладка GitHub → введи NikoriakViktot/PY-Course-Victor-Nikoriak-22-09-2026 → обери файл.
Уроки лежать у module_N/lessons/lesson_NN_<тема>/, де NN — номер уроку за програмою курсу.
Збережи свою копію¶
Ноутбук, відкритий із репозиторію курсу, не зберігає твоїх змін. Щоб працювати з ним:
- File → Save a copy in Drive — копія з'явиться на твоєму Google Drive (папка «Colab Notebooks»). Далі працюй у ній.
- Якщо викладач оновив урок, твоя копія на Drive сама не оновиться. Відкрий ноутбук заново кнопкою Colab.
Робота в Colab¶
Інтерфейс і клітинки¶
Ноутбук складається з клітинок двох видів: код (Python) і текст (Markdown). Кнопки + Code і + Text зверху додають нову клітинку під поточною. Текстову клітинку редагують подвійним кліком. Щоб виконати клітинку з кодом — кнопка ▶ зліва від неї (з'являється, коли наводиш курсор) або клавіші.
Після виконання ліворуч від клітинки з'являється зелена галочка — успіх — або червоний знак оклику — помилка; вивід (результат print чи текст помилки) — під кодом. Усі клітинки працюють в одному Python-середовищі: функція чи імпорт з однієї клітинки доступні в наступних — якщо ту клітинку вже виконали.
| Клавіші | Дія |
|---|---|
| Shift+Enter | виконати й перейти до наступної клітинки |
| Ctrl+Enter (macOS ⌘+Enter) | виконати й лишитися на клітинці |
| Ctrl+M B / Ctrl+M A | нова клітинка нижче / вище |
| Ctrl+M D | видалити клітинку |
| Ctrl+M M / Ctrl+M Y | зробити клітинку текстом / кодом |
| Ctrl+M I | зупинити клітинку, що виконується (Interrupt execution) |
| Ctrl+M . | перезапустити сеанс (Restart session) |
| Ctrl+M H | показати всі гарячі клавіші |
У Colab гарячі клавіші Jupyter працюють у два кроки через префікс Ctrl+M: натисни Ctrl+M, відпусти, потім окремо натисни літеру. Наприклад, Ctrl+M, потім H — вікно всіх гарячих клавіш (те саме, що Tools → Keyboard shortcuts).
macOS: префікс — Control+M, а не ⌘M
На Mac теж натискай саме Control+M. Комбінація ⌘M (Command-M) — системна команда macOS, яка згортає активне вікно в Dock: замість команди Colab браузер просто згорнеться. Одностепеневі скорочення на Mac працюють з Command: ⌘+Enter — виконати клітинку, ⇧Shift+Enter — виконати й перейти далі. Зліва на панелі: зміст ноутбука, пошук, Files (файли сесії) і Secrets (ключ 🔑).
Середовище виконання (runtime)¶
Коли ти запускаєш першу клітинку, Colab виділяє тобі віртуальну машину в хмарі Google — середовище виконання, приватне для твого акаунта. У ній працює Python, а отже живуть усі змінні, встановлені бібліотеки й завантажені файли.
- Colab надає ресурси безкоштовно, тому не гарантує їх: ліміти змінюються з часом і не публікуються. Перевагу мають ті, хто активно програмує в ноутбуці.
- У безкоштовному Colab ноутбук працює щонайбільше 12 годин — залежно від доступності ресурсів і того, як ти користуєшся Colab. Після певного часу бездіяльності машину відключають раніше.
- Після відключення усе в пам'яті зникає: змінні, встановлені через
%pipпакети, файли в/content. Сам ноутбук (код і тексти) лишається на Drive. Colab повідомить про відключення — перезапусти середовище й виконай клітинки знову.
Меню Runtime (назви й клавіші — як у Colab):
| Пункт меню | Клавіші | Що робить |
|---|---|---|
| Run all | Ctrl+F9 | виконати всі клітинки згори донизу |
| Run before | Ctrl+F8 | виконати всі клітинки вище поточної |
| Run selection | Ctrl+Shift+Enter | виконати виділений фрагмент коду |
| Run cell and below | Ctrl+F10 | виконати поточну клітинку й усі нижче |
| Interrupt execution | Ctrl+M I | зупинити клітинку, що «зависла» чи працює надто довго |
| Restart session | Ctrl+M . | перезапустити Python: пам'ять (змінні, імпорти) очищається, файли на машині лишаються |
| Restart session and run all | — | перезапустити й одразу виконати все згори донизу — найкраща перевірка, що ноутбук працює |
| Disconnect and delete runtime | — | повернути віртуальну машину в початковий стан |
| Change runtime type | — | вибрати прискорювач (GPU/TPU) |
| Manage sessions | — | переглянути відкриті сеанси й закрити непотрібні |
| View resources | — | скільки пам'яті й диска використовує машина |
- Disconnect and delete runtime допомагає, коли машина «зламалася»: випадково перезаписано системні файли чи встановлено несумісні пакети. Colab обмежує, як часто це можна робити, — якщо не вийшло, спробуй пізніше.
- Change runtime type → Hardware accelerator: None. GPU для задач курсу не потрібен. Colab радить не вмикати GPU без потреби: так менше шансів упертися в ліміти.
Встановлення бібліотек¶
Популярні бібліотеки для даних у Colab уже встановлені. Перевірити:
Встановити бібліотеку, якої немає:
%pipставить пакет у Python, на якому працює ноутбук.!pip installзазвичай теж працює в Colab, але%pip— надійніший звичай, який однаково працює і в Colab, і в локальному Jupyter.- Якщо бібліотеку вже імпортували в цьому сеансі, а тепер оновили — Runtime → Restart session (Ctrl+M .): інакше Python використовуватиме стару версію з пам'яті.
- Встановлення живе лише до кінця сесії. Тримай клітинку з
%pip install …на початку ноутбука, щоб наступного разу виконати її першою.
Файли: завантаження, Google Drive¶
Робоча папка сесії — /content. Усе, що там лежить, зникає разом із середовищем виконання.
Завантажити файл зі свого комп'ютера — перетягни його на панель Files або з коду:
from google.colab import files
uploaded = files.upload() # відкриє вікно вибору файлу
print(list(uploaded)) # імена завантажених файлів
Скачати файл із Colab на комп'ютер: правий клік по файлу на панелі Files → Download, або files.download("result.csv").
Google Drive — щоб файли не зникали між сесіями:
Colab попросить дозволити доступ до Drive. Після цього твій Drive видно як папку /content/drive/MyDrive/: звідти можна читати дані й туди зберігати результати.
- Підключений Drive дає будь-якому коду в ноутбуці доступ до всіх твоїх файлів на Drive. Тому Colab зазвичай просить дозвіл на кожному новому середовищі виконання. Не запускай чужі ноутбуки з
drive.mount(), не прочитавши код. drive.mount()може завершитися з помилкою «timed out», якщо в корені «Мій диск» дуже багато файлів (Colab FAQ називає поріг близько 10 000). Розклади файли по папках.
Секрети: API-ключі без ключа в коді¶
Ключі й паролі ніколи не пишуть прямо в ноутбук: його можуть побачити інші. У Colab для цього є панель Secrets (іконка 🔑 зліва): додай секрет (ім'я + значення) і ввімкни для ноутбука доступ перемикачем. У коді:
Секрети не потрапляють у ноутбук, коли ти ним ділишся.
Ділитися ноутбуком¶
Ноутбуки Colab зберігаються на Google Drive (або відкриваються з GitHub). Поділитися — кнопка Share угорі праворуч, як у Google Docs.
- Ділиться увесь вміст ноутбука: тексти, код, виводи і коментарі.
- Не ділиться віртуальна машина — твої файли в
/contentі встановлені бібліотеки. Тому тримай у ноутбуці клітинки, які встановлюють бібліотеки (%pip install …) і завантажують потрібні файли: той, з ким ти поділився, запустить їх у себе. - Щоб виводи не зберігалися у файлі: Edit → Notebook settings → Omit code cell output when saving this notebook.
- Свій файл
.ipynbз комп'ютера відкривають через File → Upload notebook; завантажити ноутбук з Colab на комп'ютер — теж через меню File. Формат — звичайний Jupyter.ipynb, тож файл відкриється і в локальному Jupyter, PyCharm чи VS Code.
AI-помічник у Colab¶
Colab має вбудовані AI-функції: кнопка Gemini (іконка-«іскра») внизу ноутбука відкриває чат, який пише й пояснює код, пропонує виправлення помилок. Вони доступні користувачам від 18 років у підтримуваних регіонах. Сам Colab FAQ радить ретельно тестувати й перевіряти весь згенерований код перед використанням — як це робити тестами, розбираємо в уроці 26 (розділ «Валідація AI-коду»). На заняттях і в домашках спершу пиши сам: AI-помічник не навчить за тебе.
Термінал і команди оболонки¶
- Одна команда:
!на початку рядка —!ls,!pwd,!git clone …. - Повноцінний термінал: кнопка Terminal внизу ліворуч. З червня 2025 року термінал безкоштовний для всіх користувачів Colab.
Colab чи Jupyter на своєму комп'ютері¶
| Colab | Jupyter локально | |
|---|---|---|
| Встановлення | нічого, лише браузер і Google-акаунт | Python + venv + pip install jupyterlab |
| Час роботи | обмежений, змінні зникають після від'єднання | скільки завгодно |
| Файли | тимчасові в /content, постійні — на Drive |
твій диск |
| Бібліотеки | багато вже є, решта — %pip кожну сесію |
ставиш один раз у venv |
Інструкція для свого комп'ютера — Jupyter локально: Notebook і JupyterLab.
Типові проблеми в Colab¶
| Симптом | Що робити |
|---|---|
клітинка виконується вічно, [*] не зникає |
Ctrl+M I (Interrupt execution) |
NameError — змінна «не визначена», хоча клітинка з нею є |
після перезапуску пам'ять порожня: Runtime → Restart session and run all |
ModuleNotFoundError після нової сесії |
бібліотеки, встановлені раніше, зникли разом із машиною — виконай клітинку з %pip install … |
файли з /content зникли |
машину відключили; зберігай важливе на Google Drive |
| Colab просить увімкнути сторонні cookies | дозволь у браузері сайт googleusercontent.com (не обов'язково вмикати cookies для всіх сайтів) |
| щось відображається не так | Colab найкраще перевірений в останніх версіях Chrome, Firefox і Safari |
| середовище «зламалося» після встановлення пакетів | Runtime → Disconnect and delete runtime |
Здача домашки з Colab¶
Домашні роботи здаються через Pull Request із гілки твого fork (див. Здача домашніх робіт). Щоб зберегти ноутбук із Colab одразу у свій fork:
- File → Save a copy in GitHub.
- Repository: твій fork (
<твій-логін>/PY-Course-Victor-Nikoriak-22-09-2026), а не репозиторій викладача. - Branch: гілка домашки (наприклад,
homework-03). Спершу створи її на GitHub або локально. - File path: повний шлях до файлу, який вказано в завданні, а не лише ім'я файлу.
- Далі на GitHub відкрий Pull Request
homework-03 → main.
Ноутбуки, яким потрібні сусідні файли¶
Деякі уроки імпортують .py-файли або читають дані з тієї ж папки. Наприклад, ноутбук file_json_example.ipynb з уроку 15 читає restaurant_info.txt та orders.csv. У Colab є лише сам ноутбук, тому додай на його початок клітинку:
!git clone --depth 1 https://github.com/NikoriakViktot/PY-Course-Victor-Nikoriak-22-09-2026.git course
%cd course/module_1/lessons/lesson_15_file_io_json
Шлях після %cd — це папка уроку, який ти відкрив.
Помилка «Could not find … .ipynb»¶
Кнопка Colab зберігає повний шлях до файлу в репозиторії. Ця помилка означає, що за цим шляхом файлу немає: ноутбук перенесли, або кнопка веде на інший репозиторій. Відкрий ноутбук через книгу курсу або вручну (спосіб 2) і повідом викладача.
Для викладача: як не зламати посилання¶
- Джерело правди — репозиторій на GitHub. Кнопку Colab (перша клітинка з
id: view-in-github) іmetadata.lmsгенерує скрипт. Вручну їх не редагуй. - Зберігаєш зміни з Colab: File → Save a copy in GitHub → репозиторій
NikoriakViktot/PY-Course-Victor-Nikoriak-22-09-2026, гілкаmain. У полі File path вкажи повний шлях, наприкладmodule_1/lessons/lesson_08_functions/note_lesson_08_functions.ipynb. За замовчуванням Colab підставляє лише ім'я файлу, і тоді ноутбук потрапляє в корінь репозиторію, і посилання на нього ламаються. Галочку «Include a link to Colaboratory» не знімай. -
Додав, переніс або перейменував ноутбук — запусти:
Скрипт оновить кнопку Colab,
metadata.lms(потік, модуль, номер і назву уроку, шлях), перетворить відносні посилання на абсолютні (у Colab відносні не працюють) і розставить кнопки Colab у книзі поруч із посиланнями на ноутбуки. GitHub Actions на кожен push і PR запускаєpython tools/sync_notebook_metadata.py --checkі падає, якщо щось розсинхронізовано. - Номери й назви уроків беруться зtools/lessons_v5.json(програма v5.0), модулі — зcourse.json.
Джерела¶
- Colab FAQ — віртуальна машина й ліміти, Disconnect and delete runtime, спільний доступ, Google Drive, AI-функції, браузери й cookies
- Overview of Colaboratory Features — клітинки, гарячі клавіші
- External data: Local Files, Drive, Sheets, and Cloud Storage —
files.upload,drive.mount - Apple, Клавіатурні скорочення для комп'ютера Mac — Command-M згортає активне вікно
- Google Colab, Colab Terminal Is Now Free For All Users (червень 2025)