Python 3.15: от новичка до профи
База языка с нуля и всё новое из версий 3.10–3.15 в каждой теме
لمن هذه الدورة
Новички, которые хотят выучить Python сразу на актуальной версии, и практикующие разработчики, которым нужно быстро понять, что поменялось с их привычной версии до 3.15.
المتطلبات
Умение пользоваться компьютером и терминалом на базовом уровне. Опыт программирования не обязателен.
منهج الدورة
13 درسСтавим Python 3.15 через uv или официальный установщик, знакомимся с интерактивной консолью и запускаем первый скрипт. Для опытных: что поменялось в REPL с 3.13 (цвет, многострочное редактирование, подсветка в 3.14) и почему uv стал стандартом.
интерпретатор
REPL
uv
виртуальное окружение
14 د
بعد التسجيل
معاينة
Базовые типы: int, float, bool, str, имена и присваивание, f-строки. Для опытных: f-строки без ограничений на кавычки (3.12), шаблонные t-строки (3.14) и модуль math.integer (3.15).
переменная
типы данных
f-строка
t-строка
15 د
في الاشتراك
معاينة
if/elif/else, while, for и range, break/continue, сопоставление с образцом match/case. Для опытных: где match реально удобнее цепочки if и что добавил 3.15 (унарный плюс в литеральных шаблонах).
условие
цикл
match/case
шаблон
15 د
في الاشتراك
معاينة
Четыре главные коллекции Python и когда какую брать. Для опытных: встроенный frozendict (PEP 814), Counter с оператором ^, itertools.batched (3.12).
list
tuple
dict
set
frozendict
13 د
في الاشتراك
معاينة
Генераторы списков, словарей, множеств и генераторные выражения. Для опытных: новая распаковка внутри comprehension в 3.15 вместо двойного for и цепочек слияния словарей.
list comprehension
генераторное выражение
распаковка
PEP 798
14 د
في الاشتراك
معاينة
def, аргументы по умолчанию, *args и **kwargs, область видимости, аннотации типов. Для опытных: синтаксис дженериков и оператор type (3.12), ленивые аннотации (3.14), встроенный sentinel (3.15).
функция
аргументы
аннотации типов
дженерики
sentinel
14 د
في الاشتراك
معاينة
try/except/else/finally, свои исключения, чтение трейсбека. Для опытных: точные указатели (3.11), группы исключений и except* (3.11), except без скобок (3.14), новые подсказки в 3.15.
исключение
трейсбек
except*
Did you mean
14 د
في الاشتراك
معاينة
Как работает import, свои модули и пакеты, зависимости через uv и pyproject.toml. Для опытных: lazy import, режим -X lazy_imports и замер времени старта.
модуль
пакет
pyproject.toml
lazy import
14 د
في الاشتراك
معاينة
Чтение и запись файлов, with, pathlib, json и csv. Для опытных: UTF-8 по умолчанию в 3.15 (PEP 686), сжатие zstd (3.14), поддержка frozendict в json.
файл
pathlib
json
csv
кодировка
13 د
في الاشتراك
معاينة
Классы, атрибуты, методы, наследование, dataclass. Для опытных: Self (3.11), @override (3.12), slots=True и что разрешили в __slots__ в 3.15.
класс
объект
наследование
dataclass
13 د
في الاشتراك
معاينة
Зачем нужна конкурентность, async/await, TaskGroup, потоки и GIL. Для опытных: TaskGroup.cancel (3.15), free-threaded сборка (3.13–3.14), субинтерпретаторы (3.14).
asyncio
TaskGroup
GIL
free-threading
14 د
في الاشتراك
معاينة
Как найти медленное место: timeit, cProfile, сэмплирующий профайлер Tachyon (profiling.sampling) и подключение к живому процессу. Финал: собираем трекер расходов целиком.
профилирование
Tachyon
flame graph
оптимизация
14 د
في الاشتراك
معاينة





