Мрієте опанувати Python з нуля та одразу застосовувати знання в реальних AI-проєктах? Курс PythonPro - це найновіша програма, повністю оновлена з урахуванням стрімкого розвитку штучного інтелекту, автоматизації та сучасної розробки. Ви не просто вивчите найпопулярнішу мову програмування — ви навчитеся працювати з технологіями, які формують майбутнє: від написання коду до інтеграції з ChatGPT, Flask, Docker та OpenAI API.
Аудиторія
* Початківці, які хочуть увійти в IT та навчитись вирішувати реальні задачі.
* Досвідчені розробники, які бажають додати Python до свого стеку і працювати з сучасними інструментами та AI.
Чому саме Ви навчитеся?
* Опануєте принципи програмування без шаблонів і магії — зрозуміло та на практиці.
* Навчитесь писати якісний, структурований код, який читають і використовують команди.
* Створите власні програми: від скриптів до веб-застосунків з інтеграцією штучного інтелекту.
* Зрозумієте, як будуються API, боти, автоматизовані системи та інтеграції з LLM (включаючи OpenAI).
* Сформуєте портфоліо та зможете претендувати на позицію Junior Python Developer або AI Assistant Developer.
Кожен студент працює у групі над реальним проєктом з елементами автоматизації або AI. Це не просто курс - це старт у нову професію.
Програма курсу:
1. НАВІЩО ПОТРІБНІ КОМП’ЮТЕРНІ ПРОГРАМИ?
Програмування як творчий процес
Архітектура комп’ютера
У чому суть програмування?
Процес «спілкування» з Python
Інтерпретатор і компілятор
Процес написання програм
Що ж таке програма?
Принципи програмування
Парадигми програмування
Вправи
2. ЗМІННІ, ВИРАЗИ І ІНСТРУКЦІЇ PYTHON
Поняття «значення» і «тип»
Змінні
Імена змінних і ключові (зарезервовані) слова
Оператори
Оператори і операнди
Вирази
Порядок операцій
Операції з рядками
Ввід даних
Коментарі
Вправи
3. УПРАВЛІННЯ ПОТОКОМ ВИКОНАННЯ
Логічні вирази
Логічні оператори
Умовне виконання
Послідовність умов
Вкладені умови
Перехоплення винятків з використанням try і except
Вправи
4. ІТЕРАЦІЇ
Оновлення змінної
Інструкція while
Нескінченні цикли
«Нескінченні цикли» і break
Завершення ітерації за допомогою continue
Списки
Визначення циклів за допомогою for
Обхід списків за допомогою циклу for
Вправи
5. ФУНКЦІЇ І МОДУЛІ
Виклик функції
Робота із api
Отримання і парсинг api даних
Формат Json
використання api у прикладних додатках
Функції приведення типів
Випадкові числа
Математичні функції
Додавання нових функцій
Визначення і використання
Параметри функції
Модульні тести
Імена файлів і шляхи
Створення власних модулів і пакетів
Ініціалізація пакета
Обробка аргументів командного рядка
Визначення параметрів середовища виконання
Створення віртуальних середовищ
Автоматична ініціалізація пакетів
Вправи
6. РЯДКИ
Рядок – це послідовність
Отримання довжини рядка з використанням len
Обхід рядка за допомогою циклу
Зріз рядка
Рядки є незмінними
Оператор in
Порівняння рядків
Малі методи
Розбір (parsing) рядків
Оператор форматування
Регулярні вирази
Вправи
7. ОСНОВИ РОБОТИ З СИСТЕМОЮ КОНТРОЛЮ ВЕРСІЙ (Git + GitHub)
8. ФАЙЛИ
Вступ
Відкриття файлів
Текстовий файл і рядки
Читання файлів
Пошук через файл
Оператор with
Запис файлів
Вправи
9. КОЛЕКЦІЇ
Що таке колекція в Python
Типи колекцій
Масиви і методи роботи з ними
Списки і методи роботи з ними
Кортежі й методи роботи з ними
Множини й незмінні множини
Словники, методи роботи зі словниками
Цикли по колекціям
Практика
10. ЕЛЕМЕНТИ ФУНКЦІОНАЛЬНОГО ПРОГРАМУВАННЯ
Функція об’єкт першого класу
Функції, залежні від функцій
Замикання
Каррування
Лямбда-функції
Декоратори
Вправи
11. ФУНКЦІЇ
Типи даних
Вбудовані контейнери
Оператори контролю виконання
Обробка помилок (try … except …)
Оператори циклів
Comprehensions (list, dict, set)
Створення функції і процедур
Аргументи функцій
Рекурсивні функції
Functors, Currying
Декоратори
Lambda-функції
PEP8
12. ОБ’ЄКТНО-ОРІЄНТОВАНИЙ ПІДХІД
Визначення класу
Поля і методи класу
Інкапсуляція
Спадкування
Поліморфізм
“Качина” типізація
Вправи
Оголошення класу та створення екземпляру
Принципи ООП (наслідування, інкапсуляція, поліморфізм) в Python
Область видимості (Namespaces, Scope, правило LEGB)
Method Resolution Order (MRO)
Курс Python – Магічні методи
Визначення математичних операцій для об’єктів Python
Визначення операцій порівняння для об’єктів Python
Визначення операцій хешування для об’єктів Python
Створення копії екземпляру класу, deep copy, shallow copy
Інкапсуляція (Setters and getters)
13. УПРАВЛІННЯ СТВОРЕННЯМ ЕКЗЕМПЛЯРІВ КЛАСУ
Doc strings
Meta класи
Abstract Bases класи
__new__
__init__
Context-managers
Використанням декораторів з класами
Контейнери, створені шляхом успадкування (UserList, UserDict, UserString)
Контейнери, створені шляхом агрегації
Методи доступу до елементів контейнера
Iterators, Generators
14. ПРИЙОМИ ОБ’ЄКТНО-ОРІЄНТОВАНОГО ПРОГРАМУВАННЯ
Software Engineering як процес
Мова UML
Принципи SOLID
Метрики якості коду
Design Patterns (категорії, приклади використання)
Singletone
Facade
Interface
15. МОДУЛІ Й ПАКЕТИ
Розробка модулів (визначення та запуск)
Система імпорту
Навчання розробці повторно використовуваних пакетів
Менеджер пакетів pip і віртуальні середовища virtualenv