school Для учителя информатики

PythonTeaching Python для всего класса

Соберите урок из задач с автопроверкой и квизов, заведите класс за минуту и смотрите в журнале, кто что решил и каким кодом. Программы учеников выполняются у них в браузере, а имён детей сервис не хранит вовсе.

0 имён учеников в базе
2 типа заданий: код с тестами и квиз
🔑
Логины и PIN выдаёт сервис
🧠
Python 3.12 в браузере ученика
Журнал · урок «Циклы»

Задача 3. Сумма от 1 до n

Стойкий Колмогоров — 4 из 4 тестов
Тихий Ломоносов — 2 из 4 тестов
Быстрый Эйлер — ещё не сдал
lightbulb О проекте

Что умеет PythonTeaching

Не задачник, а рабочее место учителя: уроки, класс и журнал в одном окне

key

Класс за минуту, без имён

Скажите, сколько учеников в классе, — сервис выдаст столько же логинов-псевдонимов вида «Стойкий Колмогоров» с PIN-кодами. Карточки печатаются из одноразового отчёта, а имён, фамилий и почты детей в базе нет вовсе.

checklist

Задачи с автопроверкой

Условие, заготовку кода и тесты «вход → ожидаемый вывод» задаёт учитель. Ученик запускает проверку сам и видит, какой тест не сошёлся, ещё до сдачи.

quiz

Квизы

Вопросы с одним или несколькими вариантами ответа и с вводом текста — чтобы проверить теорию между задачами.

table_chart

Журнал с кодом попыток

По каждому классу и уроку видно, кто что решил. Код любой попытки открывается одним щелчком — разбирать ошибку можно по тому, что ученик написал на самом деле.

visibility

Хронология работы

Для каждой задачи видно, как шла работа: запуски с ошибкой, успешные проверки, копирование, вставка из буфера и уходы со вкладки.

print

Уроки в папках, экспорт и импорт

Уроки раскладываются по темам-папкам и назначаются нужным классам. Урок, тему или все уроки сразу можно выгрузить в файл и загрузить обратно — например, коллеге.

rocket Начать

Как провести урок

1

Заведите класс

Укажите число учеников и распечатайте карточки с логинами и PIN-кодами. Ученик потерял карточку — PIN сбрасывается в карточке класса.

2

Соберите урок

Добавьте задачи с тестами и квизы и расставьте их по порядку. Изменения сохраняются сами.

3

Назначьте урок

Один урок можно назначить сразу нескольким классам — ученики увидят его у себя после входа.

4

Смотрите журнал

Кто решил, кто застрял на третьем тесте и каким кодом — всё в одной таблице. Подойти стоит к тем, у кого красное.

menu_book Справка

Как учить программированию целым классом

Почему проверка «глазами» не масштабируется

Первая же самостоятельная работа по программированию упирается в арифметику: тридцать учеников, у каждого своя программа на пятнадцать строк, и каждую надо прочитать, запустить в голове и найти, где мысль свернула не туда. На один класс это час работы, на пять классов — вечер. Именно поэтому программирование в школе часто сводится к переписыванию примеров с доски: проверить переписанное быстро, а проверить придуманное — долго.

Автопроверка снимает ровно эту часть. Тест — это пара «что подали на вход» и «что должно получиться на выходе»; программа ученика запускается на всех тестах, и ученик видит результат сам, до сдачи. Учителю остаётся то, ради чего он и нужен: разобрать с застрявшим, почему не сходится. Журнал показывает, у кого какое задание зачтено, а у кого решение не проходит третий тест уже пятую попытку — это и есть список тех, к кому стоит подойти.

Открытые и скрытые тесты: зачем делить

Открытые тесты ученик видит целиком — с входными данными и ожидаемым ответом. Они нужны для отладки: непонятно, почему не сходится, — посмотри, на каком именно наборе. Без них проверка превращается в угадайку, а ученик злится на «красную кнопку», которая ничего не объясняет.

Скрытые тесты решают другую задачу. Программу можно подогнать под конкретный пример из условия — вплоть до «напечатать 15», — и открытые тесты она пройдёт. Скрытые ломают этот путь: подгонять не под что. Заодно они ловят честные, но неполные решения — те, где не продуман граничный случай: пустой ввод, ноль, единственный элемент. Например, рекурсивная сумма от 1 до n с условием остановки n == 1 проходит оба примера из условия и уходит в бесконечную рекурсию на n = 0.

Почему Python исполняется в браузере

Обычно тренажёры с проверкой кода запускают программы ученика на сервере — и это две проблемы сразу: чужой код надо изолировать, чтобы он не положил машину, а на тридцать одновременных запусков нужны ресурсы. Здесь код выполняется прямо в браузере ученика: Pyodide — это настоящий CPython, собранный в WebAssembly. Сервер хранит задания, тесты и журнал, но чужой код не исполняет.

Для школы у этого есть практическое следствие: на компьютеры в кабинете не нужно ставить ни Python, ни IDE, ни расширения — а значит, не нужно и договариваться с тем, у кого есть права администратора. Работает на школьных машинах, на домашнем ноутбуке и на планшете одинаково. Оборотная сторона честная: первый запуск подгружает интерпретатор, это несколько секунд и заметный объём трафика, поэтому на уроке лучше открыть тренажёр заранее, а не по звонку.

lock Прозрачность

Данные и разрешения

Сервис работает с детьми, поэтому про данные — сразу и прямо.

  • Без имён детей

    Ученика в сервисе представляют только псевдоним, который выдаёт сам сервис, и хеш PIN-кода. Имён, фамилий, почты и других сведений о личности ученика PythonTeaching не принимает.

  • Код выполняется у ученика

    Программы запускаются в браузере ученика (Pyodide, Python в WebAssembly). На сервер приходят сохранённый код и результат проверки — чтобы учитель видел их в журнале.

  • Всё с нашего домена

    Интерпретатор, редактор и шрифты раздаются с app.педобраз.рф, без CDN. Счётчик посещений и реклама включаются только после согласия в баннере.

Подробно о том, что и зачем хранит сервис, — в политике обработки персональных данных; отозвать согласие можно в настройках приватности.

quiz FAQ

Часто задаваемые вопросы

Сколько это стоит? expand_more
Нисколько: PythonTeaching бесплатный для учителей и учеников.
Нужно ли вводить имена учеников? expand_more
Нет, и сервис их не примет. Учитель указывает только число учеников, а логины-псевдонимы и PIN-коды выдаёт сам сервис. Кто есть кто, знает только учитель — по распечатанным карточкам.
Ученик потерял PIN — что делать? expand_more
Учитель сбрасывает PIN в карточке класса и выдаёт ученику новый.
Где выполняется код учеников? expand_more
В их браузере: Python (Pyodide) работает прямо на школьном компьютере, ставить ничего не нужно. На сервер сохраняются код и результат проверки — для журнала.
Можно ли перенести уроки коллеге? expand_more
Да. Урок, тему или все уроки сразу можно выгрузить в файл, а коллега загрузит его к себе.
Чем PythonTeaching отличается от PythonTutor 2.0? expand_more
PythonTutor 2.0 — открытый задачник для самостоятельной работы: без входа, 704 готовые задачи, прогресс хранится в браузере. PythonTeaching — рабочее место учителя: свои уроки и задания, класс с учётными записями и журнал.
🎓

Проведите следующий урок Python здесь

Класс заводится за минуту, урок собирается из задач с тестами и квизов. Бесплатно и без имён учеников.

rocket_launch Открыть PythonTeaching open_in_new