Урок 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?

  • print("Привет!")
  • ◯ Компьютер, выведи, пожалуйста, слово «Привет»
  • ◯ Просто текст: Привет!

Подсказка при ошибке: язык программирования – это точные команды по своим правилам (со скобками и кавычками), а не просьба обычными словами и не просто текст.


Шаг 4. [ТЕСТ · несколько ответов] B1-05

Что из этого можно сделать с помощью Python? (выберите все верные варианты)

  • ☑ Сделать сайт или чат-бота ✔
  • ☑ Посчитать числа и построить по ним график ✔
  • ☑ Запрограммировать игру ✔
  • ☐ Полить цветы на подоконнике
  • ☐ Помыть чашку

Подсказка при ошибке: Python создаёт программы – то, что живёт внутри компьютера (сайты, игры, расчёты). Дела в реальном мире сам по себе он не делает.


Шаг 5. [ТЕКСТ] Где живёт код?

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

Код можно писать в разных местах:

  • простые текстовые редакторы – в них можно набрать код как обычный текст, но они почти не помогают;
  • онлайн-среды, например Google Colab – сайты, где код пишут и запускают прямо в браузере, ничего не устанавливая (пригодятся как запасной вариант, если PyCharm установить не получилось);
  • редакторы кода, например VS Code – подсвечивают код и подсказывают;
  • среды разработки, например PyCharm – мощные программы, созданные специально для работы с кодом.

В таких программах код подсвечивается цветами: сразу видно, где команда, где текст, где число. А если забыть кавычку или скобку – среда подскажет, что что-то не так.

В этом курсе мы работаем в PyCharm. Его удобно представлять как рабочее место программиста: здесь создают файлы, пишут команды на Python, запускают программы и проверяют результат. PyCharm создан специально для Python, поэтому он подсвечивает код цветом, подсказывает команды по мере набора и сразу показывает, где ошибка – таких удобных функций в нём много, и дальше в курсе мы будем ими пользоваться. В следующем уроке мы установим PyCharm и создадим первый проект.


Шаг 6. [СОПОСТАВЛЕНИЕ] B1-06

Соедините название с тем, что это на самом деле.

ПонятиеЧто это
PythonЯзык программирования – правила, по которым записывают команды
PyCharmПрограмма, в которой набирают код и нажимают «Запустить»
КодТекст программы – команды, которые мы написали

Эти три слова легко перепутать, а разница простая: Python – это на чём пишем (язык), PyCharm – где пишем и запускаем (программа), код – что мы написали. Дальше в курсе все три встречаются постоянно.


Шаг 7. [ТЕКСТ · Итог] Что мы поняли

  • Python – язык, которым человек объясняет компьютеру, что делать; на нём пишут сайты, игры, ботов, анализ данных и искусственный интеллект.
  • Его выбирают для старта, потому что код легко читать.
  • Код пишут в специальных программах. Наша – PyCharm, «рабочее место программиста».

Дальше: установим PyCharm и напишем первую программу.

Урок 1.2. Первый запуск: скопируй, вставь, запусти

Шаги: Видео → Текст (что ставим) → Текст (установка + запасной вариант) → Код (B1-01: первый запуск) → Численная задача (B1-02) → Итог.

Цель урока – почувствовать, как программа запускается: скопировать готовый код, вставить, нажать «Запустить» и посмотреть, что появилось. Как устроены команды – разберём в Блоке 2.
Наш основной инструмент – PyCharm. Если установить его не получается, в конце шага про установку есть онлайн-вариант (Google Colab) – тоже подойдёт.

Шаг 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:40New Project → файл main.py«Открываем PyCharm, создаём новый проект и в нём файл main.py
2:40–3:20Вставляем готовый код, Run, в консоли результат«Берём готовый код из урока, копируем, вставляем в файл и жмём зелёную стрелку «Запустить». Внизу, в консоли, появляется результат. Что именно делает код, разберём позже – сейчас главное увидеть, что программа работает.»
Заметка для записи: показать установку целиком, без склеек. Скриншоты ниже ([СКРИНШОТ: …]) снять с этого же экрана.

Шаг 2. [ТЕКСТ] Что именно мы ставим

Мы ставим PyCharm Community Edition – это бесплатная среда разработки для Python. Платная версия Professional нам не нужна.

PyCharm – это «рабочее место программиста»: здесь удобно писать код, запускать программы и видеть ошибки.


Шаг 3. [ТЕКСТ] Установка по шагам

Windows (основной вариант)

  1. Запустите установочный файл PyCharm Community (мы прикладываем его к курсу; его же можно скачать с jetbrains.com/pycharm, столбец Community). [СКРИНШОТ: установочный файл]
  2. В установщике нажимайте Next; на шаге с галочками отметьте Create Desktop Shortcut и .py. [СКРИНШОТ: окно с галочками]
  3. Install → дождитесь окончания → запустите PyCharm.

macOS / Linux

macOS: откройте .dmg (Community) и перетащите PyCharm в Программы. Linux: распакуйте архив (Community) и запустите pycharm.sh из папки bin (или поставьте через JetBrains Toolbox).

Если PyCharm установить не получилось – запасной вариант

  • Сначала попробуйте установочный файл, приложенный к курсу: его можно переслать и установить без захода на сайт.
  • Если установить никак не выходит, воспользуйтесь онлайн-средой Google Colab (colab.research.google.com): код пишут и запускают прямо в браузере, ничего не устанавливая. Нужен только аккаунт Google. Это полноценный запасной вариант – все задания курса в нём решаются.
  • По возможности всё же ставьте PyCharm: с ним мы работаем в видео, и он удобнее для постоянной работы.

Шаг 4. [КОД] B1-01. Первый запуск

Условие. Сейчас вы запустите свою первую программу. Писать ничего не нужно – код уже готов, ваша задача его запустить.

  1. Откройте PyCharm → New Project → выберите папку → Create. [СКРИНШОТ: экран приветствия]
  2. Правой кнопкой по папке проекта → New → Python File → имя main. [СКРИНШОТ: создание файла]
  3. Скопируйте код задания и вставьте его в файл.
  4. Нажмите зелёную стрелку ▶ (она запускает программу). Внизу откроется консоль с результатом. [СКРИНШОТ: консоль с выводом]

Программа должна вывести такие строки:

Привет! Это моя первая программа на Python.
Я её запустил, и она работает.
Дальше я научусь писать такие программы сам.

Получилось? Вы только что запустили настоящую программу – пока не разбираясь, как она устроена. Это нормально: сначала пробуем, потом понимаем.

Шаблон кода (уже заполнен):

::code
print("Привет! Это моя первая программа на Python.")
print("Я её запустил, и она работает.")
print("Дальше я научусь писать такие программы сам.")

Тесты:

def generate():
    return ['']

def solve(dataset):
    return ("Привет! Это моя первая программа на Python.\n"
            "Я её запустил, и она работает.\n"
            "Дальше я научусь писать такие программы сам.")

def check(reply, clue):
    return reply.strip() == clue.strip()

Эталон: solutions/B1-01_hello.py. Подсказка: ничего не меняйте – просто нажмите «Запустить»/«Отправить».


Шаг 5. [ЧИСЛЕННАЯ ЗАДАЧА] B1-02. Что выведет программа?

Условие. Эта программа выглядит сложнее: в ней есть переменные, список и циклы. Но разбираться, как она работает, пока не нужно – просто вставьте её в редактор, запустите и впишите число, которое появилось в консоли.

numbers = [3, 8, 5, 2, 7]
total = 0
for x in numbers:
    total = total + x
biggest = numbers[0]
for x in numbers:
    if x > biggest:
        biggest = x
print(total + biggest)

Ответ: 33 Цель – привыкнуть запускать даже «страшный» на вид код и спокойно читать результат. Скоро вы сами научитесь писать такие программы.


Шаг 6. [ТЕКСТ · Итог] Что мы умеем

  • Установили PyCharm Community (а если не вышло – онлайн-вариант Google Colab).
  • Создали проект, вставили готовый код и запустили его.
  • Научились смотреть результат в консоли – даже у программы, которая выглядит сложной.

Дальше – урок 1.3: что делать, когда программа ломается.

Урок 1.3. Когда что-то ломается

Шаги: Видео → Текст (как читать ошибку) → Численная задача (B1-03) → Численная задача (B1-07) → Итог.

Ошибки будут у всех – это часть работы. Здесь научимся не пугаться сообщения об ошибке и находить строку, в которой Python споткнулся. Команды разберём в Блоке 2 – пока просто запускаем и читаем сообщения.

Шаг 1. [ВИДЕО] Ошибка – это подсказка

Хронометраж ~2:30. Скринкаст: запускаем код, ломаем его и читаем сообщение.

ВремяНа экранеГолос за кадром (дословно)
0:00–0:20Рабочий код print("Привет, мир!"), запуск – всё хорошо«В прошлом уроке мы запустили готовую программу. Теперь нарочно её сломаем – и увидим, что это совсем не страшно.»
0:20–1:10Стираем закрывающую кавычку, запускаем → красное сообщение в консоли«Уберём одну кавычку и запустим. Внизу появилось красное сообщение – это ошибка. Программа не «сломалась навсегда»: Python просто говорит, что чего-то не понял.»
1:10–2:05Подсвечиваем в сообщении номер строки«Главное в сообщении – номер строки. Python показывает, где он споткнулся. Наша задача – найти эту строку и посмотреть, что в ней не так. Здесь – не хватает кавычки.»
2:05–2:30Возвращаем кавычку, запускаем – снова работает«Стоит вернуть кавычку – и программа снова работает. Видеть, где ошибка, – главный навык на старте. Дальше вы будете находить такие строки сами.»

Шаг 2. [ТЕКСТ] Как читать сообщение об ошибке

Когда программа не запускается, Python показывает сообщение об ошибке. Пугаться его не нужно – это подсказка. В нём есть две полезные вещи:

  • номер строки, где Python споткнулся;
  • тип ошибки (например, SyntaxError – «ошибка записи»).

Как читать сообщение об ошибке

Главное в сообщении – номер строки и тип ошибки.

Хитрый момент. Если забыли закрыть кавычку, Python ставит ^ там, где строка началась (под открывающей кавычкой), ведь конца он не нашёл. А закрывающую кавычку нужно дописать в конце строки.

Что делать: посмотреть на указанную строку и сравнить с тем, что в ней написано. Частые причины в начале:

  • забыли закрыть кавычку или скобку;
  • написали команду не в том регистре (Print вместо print);
  • случайно набрали русскую букву вместо латинской в команде.

Компьютер делает ровно то, что написано, а не то, что вы имели в виду – поэтому он и «придирается» к мелочам.


Шаг 3. [ЧИСЛЕННАЯ ЗАДАЧА] B1-03. В какой строке ошибка?

Условие. Вставьте программу в редактор и запустите. Python покажет ошибку. В какой строке ошибка? Впишите номер строки.

print("Привет!")
print("Как дела?)
print("Пока!")

Ответ: 2 Подсказка: запустите и посмотрите номер строки в сообщении; затем сравните строки глазами.


Шаг 4. [ЧИСЛЕННАЯ ЗАДАЧА] B1-07. И снова: в какой строке ошибка?

Условие. Ещё одна программа со «сломанной» строкой. Запустите её и впишите номер строки, которую укажет Python.

print("Меню на сегодня:)
print("Суп")
print("Чай")

Ответ: 1 Подсказка: ищите строку, где кавычка открылась, но не закрылась. Python укажет её номер в сообщении.


Шаг 5. [ТЕКСТ · Итог] Что мы умеем

  • Ошибка – это подсказка, а не провал.
  • В сообщении смотрим номер строки и тип ошибки.
  • Умеем найти строку, в которой Python споткнулся, – это главный навык на старте.

Дальше – Блок 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:25print("Сумма:", 2 + 2)Сумма: 4«В скобках можно перечислить несколько значений через запятую – Python выведет их в одну строку через пробел. И заметьте: то, что без кавычек, Python считает – здесь он посчитал 2 + 2
2:25–2:40Пишем # моя первая программа над кодом«А это – комментарий, после решётки. Python его пропускает: он нужен человеку. Дальше – ваши задания.»
Заметка для записи: код набирать живьём (виден процесс), шрифт ≥ 18 pt, тема PyCharm – светлая для контраста.

Шаг 2. [ТЕКСТ] Как работает print

print() – команда «вывести на экран». То, что нужно показать, пишут в скобках. Текст всегда заключают в кавычки:

print("Привет, мир!")

Команд может быть несколько, и Python выполняет их по порядку, сверху вниз:

print("Привет!")
print("Меня зовут Алекс")
print("Мне нравится программировать")

Вывод:

Привет!
Меня зовут Алекс
Мне нравится программировать

Как Python выполняет программу – сверху вниз

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:10name = "Алекс"print(name)Алекс«Вот переменная. Слева – имя, которое мы придумали, справа от знака равно – значение. Это как коробка с ярлыком: на ярлыке написано name, внутри лежит "Алекс". Дальше можно обращаться к коробке по имени.»
1:10–1:55age = 12print("Возраст:", age)«В коробку можно положить не только текст, но и число. Число пишем без кавычек. И заметьте: name хранит текст, age хранит число – Python различает их.»
1:55–2:40name = input() → ввод в консоли → print("Привет,", name)«А вот команда input – она ждёт, пока человек что-то напечатает, и кладёт это в переменную. Запускаем, печатаем имя, нажимаем Enter – программа здоровается.»
2:40–3:00input() для числа + 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:10print(2 + 3), print(10 - 4), print(6 * 7), print(20 / 8)«Плюс, минус, звёздочка – умножение, косая черта – деление. Обратите внимание: деление всегда даёт дробное число – 20 / 8 это 2.5
1:10–1:45print(17 // 5)3, print(17 % 5)2«Две косые черты – это деление нацело, а процент – остаток от деления. 17 // 5 это 3, остаток 2. Пригодится дальше в курсе.»
1:45–2:30price = 50 · count = 3 · print("Итого:", price * count)«Считать можно и с переменными. Цена, количество – умножаем, выводим результат рядом с подписью через запятую.»
2:30–2:50name = "Алекс" · print("Привет, " + name + "!")«А текст можно склеивать плюсом. Главное – не путать: плюс между числами считает, между строками – склеивает.»

Шаг 2. [ТЕКСТ] Арифметика

Python считает обычными знаками:

ЗнакДействиеПримерРезультат
+сложение2 + 35
-вычитание10 - 46
*умножение6 * 742
/деление20 / 82.5
//деление нацело17 // 53
%остаток от деления17 % 52

Два момента, которые удивляют новичков:

  • деление / всегда даёт дробное число (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.