Урок 1.1. Что такое Python и где живёт код
Шаги урока (Stepik): Видео → Текст → Тест → Тест → Текст → Сопоставление → Итог.
Шаг 1. [ВИДЕО] Язык, на котором говорят с компьютером
Хронометраж ~2:30. Формат: скринкаст + голос за кадром. Цель: заинтересовать, без кода.
| Время | На экране | Голос за кадром (дословно) |
|---|---|---|
| 0:00–0:15 | Заставка курса | «Это курс, на котором вы научитесь писать программы на Python. Уже через несколько занятий вы напишете свою первую программу – и она заработает.» |
| 0:15–0:50 | Коллаж: сайт, игра, график, чат-бот | «Python – это язык, на котором человек объясняет компьютеру, что делать. На нём пишут сайты, игры, чат-ботов, программы для анализа данных и для искусственного интеллекта. Это не учебная игрушка: им пользуются настоящие инженеры и учёные.» |
| 0:50–1:30 | Рядом два текста: длинный на другом языке и короткий на Python, оба печатают «Привет» | «Почему мы начинаем именно с Python? Потому что его легко читать. Перед вами программа, которая выводит слово на экран: слева – на другом языке, справа – на Python. Питон короче и понятнее. А значит, меньше времени уходит на технические детали и больше – на саму задачу.» |
| 1:30–2:10 | Экран PyCharm: вставляем готовый код, нажимаем Run, внизу появляется результат | «Программу пишут в специальной программе – среде разработки. Мы будем работать в PyCharm. Это выглядит так: вставляем готовый код, нажимаем «Запустить» – и компьютер выполняет то, что мы попросили. А как код устроен внутри, начнём разбирать со следующего урока.» |
| 2:10–2:30 | Чек-лист урока, кнопка «Дальше» | «В этом уроке мы разберёмся, что такое Python и где живёт код. А в следующем – установим PyCharm и запустим вашу первую программу.» |
Заметка для записи: код на экране набирать живьём (виден процесс), шрифт крупный (≥ 18 pt), тема PyCharm – светлая для контраста.
Шаг 2. [ТЕКСТ] Что такое Python?
Python – современный язык программирования. На нём пишут самые разные программы: от простых учебных задач до больших настоящих проектов.
На Python создают:
- сайты и веб-сервисы;
- игры и учебные проекты;
- чат-ботов;
- программы для анализа данных;
- программы для искусственного интеллекта.
Python часто выбирают, чтобы начать программировать: его код легко читать, многие команды понятны даже новичку. Но это не «детский» язык – им пользуются инженеры, аналитики и учёные по всему миру.
Главное удобство: на Python можно быстро превратить идею в работающую программу. Меньше внимания уходит на сложные технические детали – больше на саму задачу: что программа должна получить на вход и какой результат выдать.
В этом курсе мы будем двигаться шаг за шагом: сначала научимся запускать простые команды, затем – писать программы, которые задают вопросы, считают, принимают решения, повторяют действия и обрабатывают данные.
Шаг 3. [ТЕСТ · один ответ] B1-04
Что такое Python?
- ⬤ Язык программирования – на нём человек записывает для компьютера точные команды ✔
- ◯ Готовое приложение, которое устанавливают и сразу им пользуются, как калькулятором
- ◯ «Мозг» компьютера, который сам выполняет все вычисления
- ◯ Умение компьютера думать и принимать решения без человека
Подсказка при ошибке: Python – это язык. Команды по нему выполняет компьютер, и только те, что записал человек: сам по себе он не думает и делает ровно то, что написано.
Шаг 4. [ТЕСТ · несколько ответов] B1-05
Что из этого действительно делают с помощью Python? (выберите все верные варианты)
- ☑ Создают сайты и чат-ботов ✔
- ☑ Считают данные и строят по ним графики ✔
- ☑ Пишут игры ✔
- ☐ Увеличивают объём памяти на телефоне
- ☐ Делают домашний интернет быстрее
Подсказка при ошибке: Python – это про создание программ (что-то посчитать, показать, обработать). На «железо» компьютера и на скорость интернета сам язык не влияет.
Шаг 5. [ТЕКСТ] Где живёт код?
Мы сказали, что язык программирования нужен, чтобы «разговаривать» с компьютером. Но компьютер – необычный собеседник: голосом с ним не поговоришь, команды нужно передавать очень точно. Поэтому придумали специальные программы – в них пишут код, запускают его, смотрят результат и находят ошибки.
Код можно писать в разных местах:
- простые текстовые редакторы – в них можно набрать код как обычный текст, но они почти не помогают;
- онлайн-среды – сайты, где код пишут и запускают прямо в браузере (пригодятся как запасной вариант);
- редакторы кода, например VS Code – подсвечивают код и подсказывают;
- среды разработки, например PyCharm – мощные программы, созданные специально для работы с кодом.
В таких программах код подсвечивается цветами: сразу видно, где команда, где текст, где число. А если забыть кавычку или скобку – среда подскажет, что что-то не так.
В этом курсе мы работаем в PyCharm. Его удобно представлять как рабочее место программиста: здесь создают файлы, пишут команды на Python, запускают программы и проверяют результат. В следующем уроке мы установим PyCharm и создадим первый проект.
Шаг 6. [СОПОСТАВЛЕНИЕ] B1-06
Соедините название с тем, что это на самом деле.
| Понятие | Что это | |
|---|---|---|
| Python | → | Язык программирования – правила, по которым записывают команды |
| PyCharm | → | Программа, в которой набирают код и нажимают «Запустить» |
| Код | → | Текст программы – команды, которые мы написали |
Эти три слова легко перепутать, а разница простая: Python – это на чём пишем (язык), PyCharm – где пишем и запускаем (программа), код – что мы написали. Дальше в курсе все три встречаются постоянно.
Шаг 7. [ТЕКСТ · Итог] Что мы поняли
- Python – язык, которым человек объясняет компьютеру, что делать; на нём пишут сайты, игры, ботов, анализ данных и искусственный интеллект.
- Его выбирают для старта, потому что код легко читать.
- Код пишут в специальных программах. Наша – PyCharm, «рабочее место программиста».
Дальше: установим PyCharm и напишем первую программу.
Урок 1.2. Первый запуск: скопируй, вставь, запусти
Шаги: Видео → Текст (что ставим) → Текст (установка + запасной вариант) → Текст (первый запуск) → Код (B1-01) → Текст-задача (B1-02) → Итог.
Цель урока – почувствовать, как программа запускается: скопировать готовый код, вставить, нажать «Запустить» и посмотреть, что появилось. Как устроены команды – разберём в Блоке 2.
Наш инструмент – PyCharm: в нём пишем, запускаем и проверяем код. Если PyCharm пока не установлен, поставьте его из приложенного установочного файла.
Шаг 1. [ВИДЕО] Устанавливаем PyCharm и запускаем код
Хронометраж ~3:20. Экран компьютера, всё «вживую».
| Время | На экране | Голос за кадром (дословно) |
|---|---|---|
| 0:00–0:20 | Заставка урока | «Сейчас установим PyCharm и запустим первую программу. Если что-то не пойдёт – под видео есть текст с запасными вариантами.» |
| 0:20–1:10 | Установочный файл / сайт PyCharm → Community | «Ставим бесплатную версию – Community. Файл с установкой можно скачать или взять у преподавателя – он легко пересылается.» |
| 1:10–2:00 | Установщик: Next, галочки, Install | «Запускаем установщик. Next. Отмечу ярлык на рабочий стол и «.py». Install – и ждём.» |
| 2:00–2:40 | New Project → файл main.py | «Открываем PyCharm, создаём новый проект и в нём файл main.py.» |
| 2:40–3:20 | Вставляем готовый код, Run, в консоли результат | «Берём готовый код из урока, копируем, вставляем в файл и жмём зелёную стрелку «Запустить». Внизу, в консоли, появляется результат. Что именно делает код, разберём позже – сейчас главное увидеть, что программа работает.» |
Заметка для записи: показать установку целиком, без склеек. Скриншоты ниже ([СКРИНШОТ: …]) снять с этого же экрана.
Шаг 2. [ТЕКСТ] Что именно мы ставим
Мы ставим PyCharm Community Edition – это бесплатная среда разработки для Python. Платная версия Professional нам не нужна.
PyCharm – это «рабочее место программиста»: здесь удобно писать код, запускать программы и видеть ошибки.
Шаг 3. [ТЕКСТ] Установка по шагам
Windows (основной вариант)
- Запустите установочный файл PyCharm Community (мы прикладываем его к курсу; его же можно скачать с jetbrains.com/pycharm, столбец Community).
[СКРИНШОТ: установочный файл] - В установщике нажимайте Next; на шаге с галочками отметьте Create Desktop Shortcut и .py.
[СКРИНШОТ: окно с галочками] - Install → дождитесь окончания → запустите PyCharm.
macOS / Linux
macOS: откройте .dmg (Community) и перетащите PyCharm в Программы. Linux: распакуйте архив (Community) и запустите pycharm.sh из папки bin (или поставьте через JetBrains Toolbox).
Если сайт не открывается – запасной вариант
- Мы прикладываем установочные файлы PyCharm прямо к курсу – их можно переслать и установить без захода на сайт. Наша цель – чтобы у каждого работал именно PyCharm.
- Наш основной (и единственный) инструмент – PyCharm. Поставьте его из приложенного файла – и продолжаем.
Шаг 4. [ТЕКСТ] Первый запуск: скопируй, вставь, посмотри
- Откройте PyCharm → New Project → выберите папку → Create.
[СКРИНШОТ: экран приветствия] - Правой кнопкой по папке проекта → New → Python File → имя
main.[СКРИНШОТ: создание файла] - Скопируйте этот код и вставьте его в файл:
print("Привет, мир!")
- Нажмите зелёную стрелку ▶. Внизу откроется консоль с результатом.
[СКРИНШОТ: консоль с «Привет, мир!»]
Посмотрите, что появилось в консоли. Получилось? Вы только что запустили первую программу – пока не разбираясь, как она устроена. Это нормально: сначала пробуем, потом понимаем.
Шаг 5. [КОД] B1-01. Запустите первую программу
Условие. Код уже написан за вас. Ничего менять не нужно – просто запустите его. Программа должна вывести:
Привет, мир!
Шаблон кода (уже заполнен):
::code
print("Привет, мир!")
Тесты:
def generate():
return ['']
def solve(dataset):
return "Привет, мир!"
def check(reply, clue):
return reply.strip() == clue.strip()
Эталон: solutions/B1-01_hello.py. Подсказка: просто нажмите «Запустить»/«Отправить» – код уже готов.
Шаг 6. [ТЕКСТОВАЯ ЗАДАЧА] B1-02. Что выведет программа?
Условие. Вставьте этот код в редактор и запустите. Впишите в ответ ровно то, что появилось в консоли – обе строки, каждую со своей строки.
print("Старт")
print("Готово")
Ответ:
Старт
Готово
Цель – увидеть своими глазами, что программа выполняется сверху вниз и каждая команда print выводит свою строку. Запускаем и читаем результат внизу, в консоли.
Шаг 7. [ТЕКСТ · Итог] Что мы умеем
- Установили PyCharm Community (а если сайт закрыт – из приложенного установочного файла).
- Создали проект, вставили готовый код и запустили его.
- Научились смотреть результат в консоли.
Дальше – урок 1.3: что делать, когда программа ломается.
Урок 1.3. Когда что-то ломается
Шаги: Видео → Текст (как читать ошибку) → Почини (B1-FIX-01) → Численная задача (B1-03) → Итог.
Ошибки будут у всех – это часть работы. Здесь научимся не пугаться сообщения об ошибке, находить строку и чинить. Команды разберём в Блоке 2 – пока просто запускаем, ломаем и чиним.
Шаг 1. [ВИДЕО] Ошибка – это подсказка
Хронометраж ~2:30. Скринкаст: ломаем готовый код и чиним.
| Время | На экране | Голос за кадром (дословно) |
|---|---|---|
| 0:00–0:20 | Рабочий код print("Привет, мир!"), запуск – всё хорошо | «В прошлом уроке мы запустили готовую программу. Теперь нарочно её сломаем – и увидим, что это совсем не страшно.» |
| 0:20–1:10 | Стираем закрывающую кавычку, запускаем → красное сообщение в консоли | «Уберём одну кавычку и запустим. Внизу появилось красное сообщение – это ошибка. Программа не «сломалась навсегда»: Python просто говорит, что чего-то не понял.» |
| 1:10–2:00 | Подсвечиваем в сообщении номер строки | «Главное в сообщении – номер строки. Python показывает, где он споткнулся. Смотрим на эту строку и ищем, что не так. Здесь – не хватает кавычки.» |
| 2:00–2:30 | Возвращаем кавычку, запускаем – снова работает | «Возвращаем кавычку – запускаем – всё работает. Сломать и починить – обычное дело. Дальше попробуете сами.» |
Шаг 2. [ТЕКСТ] Как читать сообщение об ошибке
Когда программа не запускается, Python показывает сообщение об ошибке. Пугаться его не нужно – это подсказка. В нём есть две полезные вещи:
- номер строки, где Python споткнулся;
- тип ошибки (например,
SyntaxError– «ошибка записи»).
Главное в сообщении – номер строки и тип ошибки.
Хитрый момент. Если забыли закрыть кавычку, Python ставит ^ там, где строка началась (под открывающей кавычкой), ведь конца он не нашёл. А закрывающую кавычку нужно дописать в конце строки.
Что делать: посмотреть на указанную строку и сравнить с тем, что вы написали. Частые причины в начале:
- забыли закрыть кавычку или скобку;
- написали команду не в том регистре (
Printвместоprint); - случайно набрали русскую букву вместо латинской в команде.
Компьютер делает ровно то, что написано, а не то, что вы имели в виду – поэтому он и «придирается» к мелочам.
Шаг 3. [ПОЧИНИ] B1-FIX-01. Сломанная кавычка
Условие. В программе ошибка – пропала кавычка. Запустите, посмотрите на сообщение об ошибке, верните кавычку и запустите снова. Должно вывести Привет, мир!.
Шаблон кода (даётся сломанным):
::code
print("Привет, мир!)
Тесты:
def generate():
return ['']
def solve(dataset):
return "Привет, мир!"
def check(reply, clue):
return reply.strip() == clue.strip()
Эталон: solutions/B1-FIX-01_fix_print.py. Подсказка: посмотрите на кавычки – одна из них не закрыта.
Шаг 4. [ЧИСЛЕННАЯ ЗАДАЧА] B1-03. В какой строке ошибка?
Условие. Вставьте программу в редактор и запустите. Python покажет ошибку. В какой строке ошибка? Впишите номер строки.
print("Привет!")
print("Как дела?)
print("Пока!")
Ответ: 2 Подсказка: запустите и посмотрите номер строки в сообщении; затем сравните строки глазами.
Шаг 5. [ТЕКСТ · Итог] Что мы умеем
- Ошибка – это подсказка, а не провал.
- В сообщении смотрим номер строки и тип ошибки.
- Умеем сломать и починить программу и найти строку с ошибкой.
Дальше – Блок 2: начнём писать код сами – познакомимся с командой вывода print, переменными и вычислениями.
Урок 2.1. Вывод на экран: команда print
Шаги урока (Stepik): Видео → Текст (как работает print) → Текст (несколько значений) → Текст (комментарии) → Код (B2-01) → Парсон (B2-02) → Итог.
В Блоке 1 вы запускали готовый код и читали ошибки. Теперь начинаем писать код сами – с самой частой команды Python. Она выводит текст на экран.
Шаг 1. [ВИДЕО] Учимся выводить текст
Хронометраж ~2:40. Скринкаст в PyCharm, код набираем живьём.
| Время | На экране | Голос за кадром (дословно) |
|---|---|---|
| 0:00–0:20 | Пустой файл main.py | «В прошлом блоке мы запускали готовую программу. Сегодня разберём команду, которая выводит текст на экран, – и напишем её сами.» |
| 0:20–1:05 | Набираем print("Привет!"), Run, в консоли Привет! | «Команда называется print – по-английски «печатать». В скобках, в кавычках, пишем текст. Запускаем – текст появляется в консоли. Кавычки обязательны: они говорят Python, что внутри – текст, а не команда.» |
| 1:05–1:55 | Добавляем ещё две строки print(...); выполняются сверху вниз | «Команд может быть несколько. Python выполняет их по очереди, сверху вниз – как пункты инструкции. Добавим вторую и третью строку: программа печатает их одну за другой.» |
| 1:55–2:25 | print("Сумма:", 2 + 2) → Сумма: 4 | «В скобках можно перечислить несколько значений через запятую – Python выведет их в одну строку через пробел. И заметьте: то, что без кавычек, Python считает – здесь он посчитал 2 + 2.» |
| 2:25–2:40 | Пишем # моя первая программа над кодом | «А это – комментарий, после решётки. Python его пропускает: он нужен человеку. Дальше – ваши задания.» |
Заметка для записи: код набирать живьём (виден процесс), шрифт ≥ 18 pt, тема PyCharm – светлая для контраста.
Шаг 2. [ТЕКСТ] Как работает print
print() – команда «вывести на экран». То, что нужно показать, пишут в скобках. Текст всегда заключают в кавычки:
print("Привет, мир!")
Команд может быть несколько, и Python выполняет их по порядку, сверху вниз:
print("Привет!")
print("Меня зовут Алекс")
print("Мне нравится программировать")
Вывод:
Привет!
Меня зовут Алекс
Мне нравится программировать
Python читает команды по порядку, сверху вниз, и каждая печатает свою строку в консоль.
Шаг 3. [ТЕКСТ] Несколько значений в одной строке
В скобках можно перечислить несколько значений через запятую – Python выведет их в одну строку, разделив пробелом:
print("Привет,", "Алекс")
Вывод:
Привет, Алекс
Это удобно, когда рядом нужно показать текст и число:
print("Возраст:", 12)
Вывод:
Возраст: 12
Обратите внимание: "Возраст:" в кавычках – это текст, а 12 без кавычек – число. Разницу между текстом и числом мы подробно разберём в следующем уроке.
Шаг 4. [ТЕКСТ] Комментарии
Комментарии начинаются с #. Это заметки для человека – Python их не выполняет:
# приветствие
print("Здравствуйте!") # это тоже комментарий
Комментарии помогают не забыть, что делает код, и подписать сложные места. На практике их пишут постоянно – даже опытные программисты, чтобы через месяц понять собственный код.
Шаг 5. [КОД] B2-01. Визитка
Условие. Выведите визитку – ровно три строки:
Имя: Алекс
Любимое число: 7
Любимый цвет: синий
Шаблон кода (Stepik «Code template»):
::code
# выведите три строки визитки
Тесты (вкладка «Тесты» → проверка кодом):
def generate():
return [''] # ввода нет – один пустой датасет
def solve(dataset):
return "Имя: Алекс\nЛюбимое число: 7\nЛюбимый цвет: синий"
def check(reply, clue):
return reply.strip() == clue.strip()
Эталон: solutions/B2-01_visitka.py. Подсказка при ошибке: проверьте двоеточия и пробелы – текст должен совпасть точь-в-точь.
Шаг 6. [ПАРСОН] B2-02. Соберите программу
Условие. Расставьте блоки так, чтобы программа сначала отметилась комментарием, а затем по порядку поздоровалась, назвала имя и рассказала, чем занимается.
Блоки (в случайном порядке):
print("Меня зовут Алекс")
# знакомство
print("Я учусь писать код")
print("Здравствуйте!")
Правильный порядок (для автора):
# знакомство
print("Здравствуйте!")
print("Меня зовут Алекс")
print("Я учусь писать код")
Все строки – без отступа (уровень 0). Задание тренирует понимание «сверху вниз» без набора кода с нуля.
Шаг 7. [ТЕКСТ · Итог] Что мы умеем
print("текст")выводит текст; кавычки обязательны.- В скобках можно перечислить значения через запятую – они выведутся через пробел.
- Команды выполняются сверху вниз.
#– это комментарий для человека, Python его пропускает.
Дальше – урок 2.2: научимся хранить значения в переменных и спрашивать данные у пользователя.
Урок 2.2. Переменные, типы данных и ввод
Шаги урока (Stepik): Видео → Текст (переменные) → Текст (типы) → Текст (ввод input) → Тест (B2-03) → Код (B2-04) → Код (B2-05) → Итог.
Программа становится интересной, когда умеет запоминать значения и спрашивать их у человека. Этим и займёмся.
Шаг 1. [ВИДЕО] Коробки с ярлыками
Хронометраж ~3:00. Скринкаст в PyCharm, код набираем живьём.
| Время | На экране | Голос за кадром (дословно) |
|---|---|---|
| 0:00–0:20 | Пустой main.py | «Пока наши программы умели только печатать готовый текст. Сегодня научим их запоминать значения и спрашивать данные у пользователя.» |
| 0:20–1:10 | name = "Алекс" → print(name) → Алекс | «Вот переменная. Слева – имя, которое мы придумали, справа от знака равно – значение. Это как коробка с ярлыком: на ярлыке написано name, внутри лежит "Алекс". Дальше можно обращаться к коробке по имени.» |
| 1:10–1:55 | age = 12 → print("Возраст:", age) | «В коробку можно положить не только текст, но и число. Число пишем без кавычек. И заметьте: name хранит текст, age хранит число – Python различает их.» |
| 1:55–2:40 | name = input() → ввод в консоли → print("Привет,", name) | «А вот команда input – она ждёт, пока человек что-то напечатает, и кладёт это в переменную. Запускаем, печатаем имя, нажимаем Enter – программа здоровается.» |
| 2:40–3:00 | input() для числа + int(...) | «Важно: input всегда возвращает текст. Если ждём число – оборачиваем в int. Зачем – разберём в задании. Дальше – практика.» |
Шаг 2. [ТЕКСТ] Переменные
Переменная – это именованное хранилище для значения. Удобно представлять её как коробку с ярлыком: на ярлыке – имя, которое мы придумали, внутри – значение.
name = "Алекс"
age = 12
Слева от = – имя переменной, справа – значение. Знак = здесь означает не «равно», а «положить значение в коробку».
После этого к значению обращаются по имени:
name = "Алекс"
print("Привет,", name)
Вывод:
Привет, Алекс
Имя переменной придумываете вы. Несколько правил: пишут латиницей, без пробелов, понятными словами (age, price, user_name). Так код легче читать – и вам, и другим.
Шаг 3. [ТЕКСТ] Типы данных
У каждого значения есть тип – то, что это за данные. В начале нам хватит трёх:
| Тип | Что это | Пример |
|---|---|---|
int | целое число | 12, -3, 0 |
float | дробное число | 2.5, -0.1, 3.0 |
str | текст (строка) | "Алекс", "привет", "12" |
Главное различие – число или текст:
- число пишут без кавычек:
12– этоint, с ним можно считать; - текст пишут в кавычках:
"12"– этоstr, набор символов.
Это не мелочь. 12 и "12" выглядят похоже, но ведут себя по-разному:
print(12 + 12) # 24 – сложили числа
print("12" + "12") # 1212 – склеили текст
Для чисел + складывает, а для текста + склеивает строки. Поэтому важно знать, что у вас в руках – число или текст.
Шаг 4. [ТЕКСТ] Ввод данных: input
Команда input() ждёт, пока пользователь что-нибудь напечатает и нажмёт Enter, и возвращает введённое:
name = input()
print("Здравствуйте,", name)
Один важный момент, на котором спотыкаются все новички: input() всегда возвращает текст (str), даже если человек ввёл цифры. Чтобы получить число, текст нужно преобразовать:
int(...)– в целое число;float(...)– в дробное.
age = int(input()) # ждём целое число
print("Через 5 лет вам будет", age + 5)
Если убрать int, то age останется текстом, и age + 5 приведёт к ошибке: Python не умеет складывать текст и число. С этой ошибкой мы разберёмся в следующем уроке.
Шаг 5. [ТЕСТ · один ответ] B2-03
Чем отличается 5 от "5" в Python?
- ⬤
5– это число, с ним можно считать;"5"– это текст в кавычках, и+его не складывает, а склеивает ✔ - ◯ Ничем – Python понимает их одинаково
- ◯ Наоборот:
"5"– это число, а5– текст - ◯
5можно вывести черезprint, а"5"нельзя
Подсказка при ошибке: кавычки превращают значение в текст. 5 + 5 даёт 10, а "5" + "5" даёт "55". Поэтому числа, полученные из input(), оборачивают в int().
Шаг 6. [КОД] B2-04. Приветствие по имени
Условие. Программа спрашивает имя и здоровается. Считайте имя через input() и выведите приветствие. Ввод: одна строка – имя. Вывод: Здравствуйте, <имя> (имя через пробел после запятой). Пример: ввод Алекс → вывод Здравствуйте, Алекс.
Шаблон кода:
::code
name = input()
# выведите приветствие
Тесты:
def generate():
return ['Алекс', 'Мария', 'Иван Петров']
def solve(dataset):
return "Здравствуйте, " + dataset.strip()
def check(reply, clue):
return reply.strip() == clue.strip()
Эталон: solutions/B2-04_privetstvie.py. Подсказка: print("Здравствуйте,", name) выведет текст и значение переменной через пробел.
Шаг 7. [КОД] B2-05. Сумма двух чисел
Условие. Даны два целых числа, каждое на своей строке. Выведите их сумму. Ввод: две строки, в каждой целое число. Вывод: одно число – сумма. Пример: ввод 3 и 5 → вывод 8.
Шаблон кода:
::code
a = int(input())
b = int(input())
# выведите сумму
Тесты:
def generate():
return ['3\n5', '10\n20', '-4\n9', '0\n0']
def solve(dataset):
a, b = dataset.split('\n')
return str(int(a) + int(b))
def check(reply, clue):
return reply.strip() == clue.strip()
Эталон: solutions/B2-05_summa.py. Подсказка: не забудьте int() вокруг input() – иначе + склеит две строки ("3" + "5" даст "35", а не 8).
Шаг 8. [ТЕКСТ · Итог] Что мы умеем
- Переменная – коробка с ярлыком:
имя = значение. - У значений есть типы:
int(целое),float(дробное),str(текст). - Число пишут без кавычек, текст – в кавычках; для них
+работает по-разному. input()спрашивает данные у пользователя и всегда возвращает текст; для числа нуженint()илиfloat().
Дальше – урок 2.3: научимся считать (арифметика) и собирать текст из частей.
Урок 2.3. Вычисления и работа со строками
Шаги урока (Stepik): Видео → Текст (арифметика) → Текст (склейка текста) → Код (B2-06) → Код (B2-07) → Почини (B2-FIX-01) → Итог.
Переменные умеют хранить значения. Теперь научим программу считать и собирать текст из частей – это нужно почти в каждой задаче.
Шаг 1. [ВИДЕО] Калькулятор и сборка текста
Хронометраж ~2:50. Скринкаст в PyCharm.
| Время | На экране | Голос за кадром (дословно) |
|---|---|---|
| 0:00–0:20 | Пустой main.py | «Python отлично считает. Сейчас используем его как калькулятор, а потом соберём из чисел и текста готовую фразу.» |
| 0:20–1:10 | print(2 + 3), print(10 - 4), print(6 * 7), print(20 / 8) | «Плюс, минус, звёздочка – умножение, косая черта – деление. Обратите внимание: деление всегда даёт дробное число – 20 / 8 это 2.5.» |
| 1:10–1:45 | print(17 // 5) → 3, print(17 % 5) → 2 | «Две косые черты – это деление нацело, а процент – остаток от деления. 17 // 5 это 3, остаток 2. Пригодится дальше в курсе.» |
| 1:45–2:30 | price = 50 · count = 3 · print("Итого:", price * count) | «Считать можно и с переменными. Цена, количество – умножаем, выводим результат рядом с подписью через запятую.» |
| 2:30–2:50 | name = "Алекс" · print("Привет, " + name + "!") | «А текст можно склеивать плюсом. Главное – не путать: плюс между числами считает, между строками – склеивает.» |
Шаг 2. [ТЕКСТ] Арифметика
Python считает обычными знаками:
| Знак | Действие | Пример | Результат |
|---|---|---|---|
+ | сложение | 2 + 3 | 5 |
- | вычитание | 10 - 4 | 6 |
* | умножение | 6 * 7 | 42 |
/ | деление | 20 / 8 | 2.5 |
// | деление нацело | 17 // 5 | 3 |
% | остаток от деления | 17 % 5 | 2 |
Два момента, которые удивляют новичков:
- деление
/всегда даёт дробное число (float):10 / 2это5.0, а не5; //и%работают в паре:17 // 5это3(сколько раз пятёрка помещается в 17), а17 % 5это2(что осталось).
Считать можно и с переменными:
price = 50
count = 3
print("Итого:", price * count) # Итого: 150
Шаг 3. [ТЕКСТ] Собираем текст из частей
Часто нужно вывести фразу, в которой есть и текст, и значение переменной. Есть два простых способа.
Способ 1 – запятая в print (уже знаком): значения выводятся через пробел.
name = "Алекс"
print("Привет,", name) # Привет, Алекс
Способ 2 – склейка строк плюсом. Знак + соединяет строки в одну. Так можно управлять текстом точнее – например, поставить восклицательный знак вплотную:
name = "Алекс"
print("Привет, " + name + "!") # Привет, Алекс!
Важная тонкость: плюсом склеиваются только строки. Склеить текст с числом напрямую нельзя – Python выдаст ошибку. Если очень нужно, число превращают в текст функцией str():
age = 12
print("Возраст: " + str(age)) # Возраст: 12
На практике для простого вывода удобнее запятая, а склейку берут, когда нужно собрать строку без лишних пробелов.
Шаг 4. [КОД] B2-06. Сантиметры в метры
Условие. Дана длина в сантиметрах (целое число). Переведите её в метры и выведите результат. Ввод: одно целое число – сантиметры. Вывод: длина в метрах (дробное число). Пример: ввод 250 → вывод 2.5.
Шаблон кода:
::code
cm = int(input())
# переведите в метры и выведите
Тесты:
def generate():
return ['250', '100', '30', '7']
def solve(dataset):
return str(int(dataset) / 100)
def check(reply, clue):
return reply.strip() == clue.strip()
Эталон: solutions/B2-06_cm_v_metry.py. Подсказка: в метре 100 сантиметров – разделите на 100. Деление / сразу даст дробное число.
Шаг 5. [КОД] B2-07. Стоимость покупки
Условие. Известны цена одного билета и количество билетов. Посчитайте, сколько нужно заплатить. Ввод: две строки – цена и количество (целые числа). Вывод: общая стоимость. Пример: ввод 50 и 3 → вывод 150.
Шаблон кода:
::code
price = int(input())
count = int(input())
# выведите общую стоимость
Тесты:
def generate():
return ['50\n3', '120\n2', '7\n0', '15\n10']
def solve(dataset):
price, count = dataset.split('\n')
return str(int(price) * int(count))
def check(reply, clue):
return reply.strip() == clue.strip()
Эталон: solutions/B2-07_stoimost.py. Подсказка: общая стоимость – это цена, умноженная на количество.
Шаг 6. [ПОЧИНИ] B2-FIX-01. Текст вместо числа
Условие. Программа должна прибавить к введённому числу 5 и вывести результат. Но при запуске она падает с ошибкой TypeError – Python не может сложить текст и число. Найдите причину и почините.
Сломанный шаблон (::code):
age = input()
print(age + 5)
Ввод: одно целое число. Вывод: число, увеличенное на 5. Пример: ввод 10 → вывод 15.
Тесты:
def generate():
return ['10', '14', '7', '0']
def solve(dataset):
return str(int(dataset) + 5)
def check(reply, clue):
return reply.strip() == clue.strip()
Эталон: solutions/B2-FIX-01_zabyli_int.py. Подсказка: input() возвращает текст. Чтобы считать, оберните его в int(): age = int(input()).
Шаг 7. [ТЕКСТ · Итог] Что мы умеем
- Python считает знаками
+ - * /, а ещё есть//(деление нацело) и%(остаток). - Деление
/всегда даёт дробное число. - Текст собирают из частей: через запятую в
printили склейкой+(только для строк; число превращают в текст черезstr()). - Типичная ошибка – забыть
int()уinput(): тогда вместо сложения получается склейка илиTypeError.
Дальше – Блок 3: научим программу принимать решения с помощью условий if.