Перейти до змісту

Ноутбуки в Google Colab

Google Colab запускає Jupyter-ноутбуки просто в браузері: нічого встановлювати не треба, потрібен лише Google-акаунт.

Як відкрити ноутбук уроку

Спосіб 1 — кнопка. У першій клітинці кожного ноутбука (і поруч із посиланнями на ноутбуки в книзі) є кнопка Open In Colab. Натисни її, і ноутбук відкриється в 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 show pandas
!python --version

Встановити бібліотеку, якої немає:

%pip install назва-пакета
  • %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 — щоб файли не зникали між сесіями:

from google.colab import drive

drive.mount("/content/drive")

Colab попросить дозволити доступ до Drive. Після цього твій Drive видно як папку /content/drive/MyDrive/: звідти можна читати дані й туди зберігати результати.

  • Підключений Drive дає будь-якому коду в ноутбуці доступ до всіх твоїх файлів на Drive. Тому Colab зазвичай просить дозвіл на кожному новому середовищі виконання. Не запускай чужі ноутбуки з drive.mount(), не прочитавши код.
  • drive.mount() може завершитися з помилкою «timed out», якщо в корені «Мій диск» дуже багато файлів (Colab FAQ називає поріг близько 10 000). Розклади файли по папках.

Секрети: API-ключі без ключа в коді

Ключі й паролі ніколи не пишуть прямо в ноутбук: його можуть побачити інші. У Colab для цього є панель Secrets (іконка 🔑 зліва): додай секрет (ім'я + значення) і ввімкни для ноутбука доступ перемикачем. У коді:

from google.colab import userdata

api_key = userdata.get("MY_API_KEY")

Секрети не потрапляють у ноутбук, коли ти ним ділишся.

Ділитися ноутбуком

Ноутбуки 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:

  1. File → Save a copy in GitHub.
  2. Repository: твій fork (<твій-логін>/PY-Course-Victor-Nikoriak-22-09-2026), а не репозиторій викладача.
  3. Branch: гілка домашки (наприклад, homework-03). Спершу створи її на GitHub або локально.
  4. File path: повний шлях до файлу, який вказано в завданні, а не лише ім'я файлу.
  5. Далі на 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» не знімай.
  • Додав, переніс або перейменував ноутбук — запусти:

    python tools/sync_notebook_metadata.py
    

    Скрипт оновить кнопку Colab, metadata.lms (потік, модуль, номер і назву уроку, шлях), перетворить відносні посилання на абсолютні (у Colab відносні не працюють) і розставить кнопки Colab у книзі поруч із посиланнями на ноутбуки. GitHub Actions на кожен push і PR запускає python tools/sync_notebook_metadata.py --check і падає, якщо щось розсинхронізовано. - Номери й назви уроків беруться з tools/lessons_v5.json (програма v5.0), модулі — з course.json.

Джерела