Урок Python: Функции и рекурсия — повторное использование кода и решение сложных задач

МЕНЮ


Главная страница
Поиск
Регистрация на сайте
Помощь проекту
Архив новостей

ТЕМЫ


Новости ИИРазработка ИИВнедрение ИИРабота разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика

Авторизация



RSS


RSS новости


2025-06-22 11:53

разработка по

Функции — это основа структурированного программирования. Они позволяют повторно использовать код, делать его чище и понятнее. А рекурсия — это особый приём, когда функция вызывает саму себя для решения задачи по шагам. Сегодня мы рассмотрим оба инструмента в действии. ?

Что такое функция в Python?

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

def greet(name):

return f"Привет, {name}!"

# Вызов:

print(greet("Анна"))

Аргументы и параметры

Функции могут принимать значения (аргументы), использовать их внутри и возвращать результат:

def add(a, b):

return a + b

add(3, 5) # вернёт 8

Аргументы могут быть обязательными и по умолчанию:

def hello(name="гость")

Возврат значений

Функция возвращает значение через return. Это значение можно сохранить в переменную или использовать в выражении.

Важно: return завершает выполнение функции, и его можно использовать один раз за вызов.

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

Локальные существуют только внутри функции

Глобальные — вне функций, доступны везде

Пример:

x = 10 # глобальная

def change():

global x

x = 20 # изменяет глобальную переменную

Области видимости (LEGB)

Python ищет переменные в 4-х областях:

Local — внутри функции

Enclosing — внутри замыкающей функции

Global — во внешнем коде

Built-in — встроенные функции, например len()

Лямбда-функции

Короткие функции без имени:

lambda x: x * 2 — возвращает x, умноженное на 2

Пример с map:

list(map(lambda x: x.upper(), ["a", "b", "c"])) ? ["A", "B", "C"]

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

Рекурсия — это функция, вызывающая саму себя до тех пор, пока не будет достигнут базовый случай.

def factorial(n):

if n == 0:

return 1

return n * factorial(n - 1)

Вызов factorial(5) вернёт 120

Важно: в Python есть ограничение — максимум ~1000 рекурсивных вызовов.

Числа Фибоначчи через рекурсию

def fib(n):

if n <= 1:

return n

return fib(n - 1) + fib(n - 2)

Полезные ресурсы

Главная страница — https://pythonlib.ru

Теория по этому уроку — https://pythonlib.ru/tasks-10

Вся теория по Python — https://pythonlib.ru/theory

Тренажёр с задачами и автопроверкой — https://pythonlib.ru/task271

Видеоматериалы

YouTube: https://www.youtube.com/watch?v=v7Rqm5tHeU8&ab_channel=Pythonlib

RuTube: https://rutube.ru/video/98e75a0f204bbba5ef9760a4ae62c7de/

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


Источник: rutube.ru

Комментарии: