JustCaptain kod-buduschego
a8f57e3b0908bc3333dc3d5c7a2fbd787fa9c317
Перейти к файлу
Код
kod-buduschego Python 2025-20263.1. Функции в программированиеMATERIAL.md
anc update c70a58f 8 октября 2026 г.
391 строка 6.7 КБ
MATERIAL.md

Методический материал

Функции в Python (краткий конспект)

  1. Понятие функции

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

Функции позволяют:

  • избегать повторения кода;
  • делать программу структурированной;
  • упрощать сопровождение и тестирование.

Пример проблемы без функций:

print("Привет, Иван")
print("Привет, Мария")
print("Привет, Алексей")

С функцией:

def greet(name):
print(f"Привет, {name}")
greet("Иван")
greet("Мария")
greet("Алексей")

⸻

  1. Объявление функции

Функция создаётся с помощью ключевого слова def.

Синтаксис

def имяфункции(параметры):
тело
функции

Пример:

def hello():
print("Привет, мир")

Вызов функции:

hello()

Результат:

Привет, мир

⸻

  1. Параметры и аргументы

Параметры

Переменные, указанные при создании функции.

Аргументы

Значения, передаваемые в функцию.

Пример:

def square(number):
result = number ** 2
print(result)
square(5)

Результат:

25

Здесь:

  • number — параметр;
  • 5 — аргумент.

⸻

  1. Возврат значения (return)

Оператор return возвращает результат работы функции.

Пример:

def add(a, b):
return a + b
result = add(3, 4)
print(result)

Результат:

7

Без return функция возвращает None.

Пример:

def test():
print("Тест")
x = test()
print(x)

Результат:

Тест
None

⸻

  1. Значения параметров по умолчанию

Можно задать стандартное значение параметра.

Пример:

def greet(name="Гость"):
print(f"Привет, {name}")
greet()
greet("Анна")

Результат:

Привет, Гость
Привет, Анна

⸻

  1. Именованные аргументы

Аргументы можно передавать по имени.

Пример:

def person(name, age):
print(name, age)
person(age=20, name="Иван")

Результат:

Иван 20

⸻

  1. Локальные и глобальные переменные

Локальная переменная

Доступна только внутри функции.

def example():
x = 10
print(x)
example()

Глобальная переменная

Доступна во всей программе.

x = 100
def show():
print(x)
show()

⸻

  1. Область видимости (Scope)

Переменная, созданная внутри функции, недоступна снаружи.

Ошибка:

def test():
number = 10
print(number)

Результат:

NameError

⸻

  1. Несколько значений из функции

Функция может вернуть несколько значений.

def calc(a, b):
return a + b, a * b
sum_result, mult_result = calc(3, 5)
print(sum_result)
print(mult_result)

Результат:

8
15

⸻

  1. Неограниченное количество аргументов

*args

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

def total(*numbers):
print(sum(numbers))
total(1, 2, 3, 4)

Результат:

10

**kwargs

Позволяет передавать именованные аргументы.

def user_info(**data):
print(data)
user_info(name="Иван", age=25)

Результат:

{'name': 'Иван', 'age': 25}

⸻

  1. Рекурсивные функции

Рекурсия — вызов функцией самой себя.

Пример: факториал числа.

def factorial(n):
if n == 1:
return 1
return n * factorial(n - 1)
print(factorial(5))

Результат:

120

⸻

  1. Lambda-функции

Краткая форма записи функции.

Обычная функция:

def square(x):
return x ** 2

Lambda-аналог:

square = lambda x: x ** 2
print(square(4))

Результат:

16

⸻

  1. Полезные встроенные функции

map()

Применяет функцию ко всем элементам.

numbers = [1, 2, 3]
result = list(map(lambda x: x * 2, numbers))
print(result)

Результат:

[2, 4, 6]

filter()

Фильтрует элементы.

numbers = [1, 2, 3, 4, 5]
result = list(filter(lambda x: x % 2 == 0, numbers))
print(result)

Результат:

[2, 4]

⸻

  1. Типичные ошибки

  2. Забыли вызвать функцию

Ошибка:

def hello():
print("Hi")
hello

Правильно:

hello()

  1. Отсутствует return

Ошибка:

def add(a, b):
a + b

Правильно:

def add(a, b):
return a + b

  1. Неправильное число аргументов

Ошибка:

def show(name):
print(name)
show()

⸻

  1. Практические задания

Задание 1

Написать функцию вычисления площади прямоугольника.

Пример:

rectangle_area(5, 10)

Результат:

50

Задание 2

Написать функцию проверки чётности числа.

Пример:

is_even(8)

Результат:

True

Задание 3

Создать функцию вычисления максимального числа из трёх.

⸻

  1. Контрольные вопросы

  2. Что такое функция?

  3. Для чего используется def?

  4. Чем отличается параметр от аргумента?

  5. Для чего нужен return?

  6. Что делают *args и **kwargs?

  7. Что такое рекурсия?

  8. Для чего применяются lambda-функции?

⸻

  1. Итоги

Функции — базовый механизм структурирования программ в Python.

Ключевые элементы:

  • def — создание функции;
  • параметры и аргументы;
  • return — возврат результата;
  • область видимости переменных;
  • *args, **kwargs;
  • рекурсия;
  • lambda-функции.

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