Дана функция def split_total(total): return total // 100, total % 100. Что вернёт вызов split_total(250)?
A
(2, 50): кортеж из частного total // 100 и остатка total % 100 от деленияB
(250, 0): кортеж из исходного числа и нулевого остатка от деления на сотнюC
[2, 50]: список из двух чисел, поскольку запятая в return создаёт listD
TypeError: возврат нескольких значений требует явных скобок кортежа в returnПравильный ответ. Функция может вернуть несколько значений — фактически это один
tuple.Разбор
Выражение после return содержит два значения через запятую — Python автоматически собирает их в кортеж tuple. Для 250: 250 // 100 равно 2, а 250 % 100 равно 50. Итог — (2, 50). Такой стиль часто используют для возврата связанных результатов, которые затем удобно распаковать: a, b = split_total(250). Список через запятую без скобок Python не создаёт, и ошибки тут тоже не возникает.
Проверь себя · 1/3разбор после ответа
Дан код:
x = 10 на верхнем уровне модуля и def inc(): return x + 1. Что вернёт вызов inc()?Ещё вопросы по теме «Функции и аргументы»
- Есть функция `def add(x, y): return x + y`. Что вернет вызов `add(2, 3)`?
- Дана функция `def f(a, b, c): return a * 100 + b * 10 + c`. Что вернёт вызов `f(1, c=3, b=2)`?
- Есть функция `def power(x, exp=2): return x ** exp`. Что вернёт вызов `power(3)`?
- Дана функция `def total(*args): return sum(args)`. Что вернёт вызов `total(1, 2, 3)`?
- Дан код: `x = 10` на верхнем уровне модуля и `def inc(): return x + 1`. Что вернёт вызов `inc()`?
- Все вопросы по «Функции и аргументы» →