Функция в одну строку
Под именем bill лежит вся функция, и она занимает одну строку: lambda price, tip: price + tip. После двоеточия стоит только price + tip, оттуда и берётся значение. return в строке нет, и под ней нет строки с отступом. bill(4, 1) равно 5.
Дальше вы пользуетесь именем bill. bill(4, 1) кладёт 4 в price и 1 в tip, в порядке имён. print пишет этот результат.
bill = lambda price, tip: price + tip
print(bill(4, 1))
На экране 5. Это написал print. Строка lambda сама ничего не пишет. 4 + 1 равно 5, поэтому bill(4, 1) равно 5. Другие числа складываются так же. bill(4, 0) равно 4.
Ту же сумму можно записать через def на нескольких строках, а return поставить отдельно. На этой странице сумма остаётся в выражении после двоеточия.
📊 Одна строка или несколько
| Форма | Откуда берётся значение |
|---|---|
| lambda price, tip: price + tip | выражение после двоеточия |
| def со строкой return price + tip | строка return |
Где эта строка ломается
return не ставится после двоеточия. Программа останавливается на lambda price, tip: return price + tip: там нужно выражение, а return им не является. Без двоеточия программа тоже останавливается. bill() и bill(4) останавливаются по той же причине: строка называет два входа, и оба надо заполнить.
На следующей странице функция снова выполняется изнутри самой себя. Здесь функция записана только в одну строку.
На экране
- Что пишет print(bill(4, 1))?
- Чему равно bill(4, 0)?
- Вы ставите return после двоеточия. Программа доходит до конца?
- Есть ли под этой функцией строка с отступом?
Что делает строка
lambda price, tip: price + tip — это вся функция. bill(4, 1) равно 5, и print пишет эту 5. Значение — выражение после двоеточия, поэтому return в строке нет. return после двоеточия останавливает программу. bill(4, 0) равно 4.
🧠 Проверьте Свои Знания
Проверьте Свои Знания
Бросьте себе вызов с помощью этой интерактивной викторины и узнайте, насколько хорошо вы понимаете тему
📝 Инструкции
- Внимательно прочитайте каждый вопрос
- Выберите лучший ответ на каждый вопрос
- Вы можете пересдавать тест столько раз, сколько захотите
- Ваш прогресс будет показан вверху