Лечение и return

Используем аптечку и возвращаем новое здоровье.

Два дружелюбных питона

Шаг 1 · Ограничь лечение

Здоровье не должно подниматься выше стартовых 10 HP.

Python
Запустить в IDE ↗
hp = 8hp = min(10, hp + 4)print("HP:", hp)
Результат
HP: 10

Что происходит в коде

  1. hp + 4 даёт 12, но максимум для игрока — 10.
  2. min(10, 12) выбирает меньшее число, то есть 10.
  3. Новое значение сохраняется обратно в hp.

Шаг 2 · Верни новый HP

Функция return отдаёт результат туда, откуда её вызвали.

Python
Запустить в IDE ↗
def heal(hp):    hp = min(10, hp + 4)    return hphp = 5hp = heal(hp)print("HP:", hp)
Результат
HP: 9

Что происходит в коде

  1. heal получает старый hp как параметр.
  2. return hp отдаёт вычисленное число из функции.
  3. Снаружи мы сохраняем этот результат: hp = heal(hp).

Попробуй сам

  1. Сделай вторую функцию snack(hp), которая прибавляет 2 HP.
  2. Проверь лечение при стартовом hp = 9.
  3. Создай inventory с аптечкой и удали её после применения через remove().

Открой пример в онлайн IDE, измени его и проверь результат после каждого изменения.

Как это работает в полной игре

В готовой игре use_item() лечит героя, удаляет одноразовый предмет из рюкзака и возвращает новое hp.

Скачать исходный код игры
Заметка для преподавателя

Особенно важно показать разницу между print и return: print только показывает число, а return позволяет сохранить его в переменной снаружи функции.