Определение функций

Тренажер по Python для пользователей с начальным уровнем подготовки.

Тренажер по Python

В этом модуле мы переходим к одной из важнейших тем программирования — функциям. Функции позволяют упаковывать код в именованные блоки, чтобы использовать их многократно, не переписывая одно и то же. Это делает программы структурированными, читаемыми и эффективными.

Вы научитесь:
1. Правильно объявлять функции с помощью ключевого слова def.
2. Понимать синтаксис: имя, скобки, двоеточие и отступы.
3. Различать объявление функции и её вызов.
4. Использовать оператор return для возврата результата.

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

Список тем

Первый шаг: вызов функции

id: 40035_task_func_01

Посмотрите на код. Мы определили простую функцию, которая печатает текст, а затем вызвали её. Что появится на экране в результате выполнения всей программы?

Выберите правильный вариант ответа
def say_hello():
    print("Python is fun!")

say_hello()
Сообщения
Проверить
Показать подсказку

Синтаксис объявления функции

id: 40035_task_func_02

Заполните пропуски, чтобы корректно объявить функцию с именем `greet`. Не забудьте про ключевое слово в начале и обязательный символ в конце строки заголовка.

Заполните пропуски
input1S greet()input2S
    print("Welcome!")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Исправление ошибок синтаксиса

id: 40035_task_func_03

В этом коде допущены две ошибки: одна в заголовке функции, другая — в теле функции (отступ). Найдите и исправьте их.

Найдите ошибку и исправьте
def print message():
print("This is a message")
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Объявление или Вызов?

id: 40035_task_func_04

Распределите строки кода по двум категориям: "Объявление функции" (создание новой функции) и "Вызов функции" (использование уже созданной).

Перетяните элементы в соответствующие блоки
Объявление функции
Вызов функции
def start_engine():
run_program()
def calculate_sum(a, b):
print_result("Done")
Сообщения
Проверить
Показать подсказку

Соберите функцию умножения

id: 40035_task_func_05

Восстановите правильный порядок строк, чтобы создать функцию `multiply`, которая принимает два аргумента, и затем вызвать её с числами 3 и 4.

Расставьте строки в правильном порядке
print(a * b)
def multiply(a, b):
multiply(3, 4)
Сообщения
Проверить
Показать подсказку

Параметры функции

id: 40035_task_func_06

Мы хотим создать функцию, которая выводит данные пользователя. Заполните пропуски в определении функции, используя правильные имена параметров из банка. В теле функции используются переменные `name` и `age`.

Нужно правильно расставить в пропуски предложенные варианты
def show_info(input1S, input2S):
    print(f"Name: {name}")
    print(f"Age: {age}")
name
'name'
age
'age'
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Термины функций

id: 40035_task_func_07

Сопоставьте элементы функции с их описанием. Понимание терминологии поможет вам лучше читать документацию.

Сопоставьте строки в правой части с соответствующими строками в левой по порядковому номеру
Ключевое слово для создания функции
Оператор для возврата результата
Переменные, указанные в скобках при объявлении
def
return
Параметры
Сообщения
Проверить
Показать подсказку

Функция возведения в квадрат

id: 40035_task_func_08

Соберите код, который определяет функцию `square`, возвращающую квадрат числа, и затем выводит результат для числа 5. Будьте внимательны: одна строка содержит ошибку в логике (печать вместо возврата) и является лишней.

Перетяните в правильном порядке строки из одного блока в другой
def square(num):
    return num * num
    print(num * num)
print(square(5))
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Возврат значения по условию

id: 40035_task_func_09

Заполните пропуски, чтобы функция `check_sign` возвращала строку "Positive", если число `x` больше 0, и "Negative" в противном случае.

Заполните пропуски
def check_sign(x):
    if x > 0:
        input1S "Positive"
    else:
        input2S "Negative"
Сообщения
Проверить
Показать решение на 3 сек.
Показать подсказку

Предскажите результат вычисления

id: 40035_task_func_10

Проанализируйте код функции. Она принимает число, прибавляет к нему 10 и возвращает результат. Какое число будет выведено на экран при вызове с аргументом 5? Введите только число.

Что должно получиться?
def add_ten(x):
    return x + 10

result = add_ten(5)
print(result)
Сообщения
Проверить
Показать подсказку
НайтиКурс.Ру