Перейти к содержимому
шпаргалка.
Esc
навигацияоткрыть⌘Jпредпросмотр
На этой странице

Функции

Все темы Data Analyst

Что такое декоратор?

Декоратор в Python — это функция, которая принимает другую функцию и расширяет её функциональность без изменения её кода.

Пример:

def my_decorator(func):
    def wrapper():
        print("Something before the function.")
        func()
        print("Something after the function.")
    return wrapper

@my_decorator
def say_hello():
    print("Hello!")

say_hello()

При вызове say_hello() будет выведено:

Something before the function.
Hello!
Something after the function.

Объясните, как работает функция range

Функция range в Python используется для генерации последовательности чисел. Она имеет три параметра: start, stop, step.

Примеры:

  1. range(stop):

    for i in range(5):
        print(i)
    # Вывод: 0, 1, 2, 3, 4
  2. range(start, stop):

    for i in range(1, 5):
        print(i)
    # Вывод: 1, 2, 3, 4
  3. range(start, stop, step):

    for i in range(1, 10, 2):
        print(i)
    # Вывод: 1, 3, 5, 7, 9

range возвращает объект, который можно итерировать для получения чисел в заданном диапазоне.


В чем разница между func и func()?

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

func(): это вызов функции, который выполняет её код и возвращает результат.

Пример:

def greet():
    return "Hello"

# func - ссылка на функцию
reference = greet

# func() - вызов функции
result = greet()

print(reference)  # <function greet at 0x...>
print(result)     # "Hello"

Объясните, как работает функция map

Функция map в Python применяет заданную функцию ко всем элементам указанного итерируемого объекта (например, список) и возвращает итератор с результатами.

Пример:

def square(x):
    return x * 2

numbers = [1, 2, 3, 4, 5]
result = map(square, numbers)

print(list(result))  # [2, 4, 6, 8, 10]

map берет функцию square и применяет её ко всем элементам списка numbers. Результат — новый итератор, который преобразуется в список для отображения.


Объясните, как работает функция reduce

Функция reduce из модуля functools в Python применяет указанную функцию к элементам последовательности, сводя её к одному значению.

Пример:

from functools import reduce

def add(x, y):
    return x + y

numbers = [1, 2, 3, 4, 5]
result = reduce(add, numbers)

print(result)  # 15

reduce последовательно применяет функцию add к элементам списка: сначала к первым двум, затем результат к следующему элементу и так далее, пока не останется одно значение.


Объясните, как работает функция filter

Функция filter в Python используется для создания итератора, состоящего из элементов, которые удовлетворяют условию, заданному в виде функции.

Пример:

def is_even(n):
    return n % 2 == 0

numbers = [1, 2, 3, 4, 5, 6]
result = filter(is_even, numbers)

print(list(result))  # [2, 4, 6]

filter применяет функцию is_even ко всем элементам списка numbers и возвращает итератор, содержащий только те элементы, для которых функция вернула True.

Эта страница была полезной?