PYPROGLIB Telegram 6745
🪅 Команда дня: разбираемся с функциями высшего порядка

Хотите писать чистый, читаемый и лаконичный код без явных циклов? Тогда самое время освоить функции высшего порядка — map(), filter() и reduce().

Эти инструменты из арсенала функционального программирования помогают эффективно обрабатывать и трансформировать данные. А главное — они уже встроены в Python и легко применимы на практике.

💡 Что такое функции высшего порядка

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

В Python это не только map(), filter() и reduce(), но и любые функции, работающие с другими функциями.

map(): применяем функцию ко всем элементам

Используется для трансформации каждого элемента в итерируемом объекте:
string_numbers = ["1", "2", "3", "4"]
int_numbers = map(int, string_numbers)
print(list(int_numbers)) # [1, 2, 3, 4]


Или, например:
def add_five(x): return x + 5
numbers = [1, 2, 3]
result = map(add_five, numbers)
print(list(result)) # [6, 7, 8]


filter(): фильтруем по условию

Отбирает элементы, удовлетворяющие определённому условию:
data = [0, None, 1, 2, None, 3]
filtered_data = filter(None, data)
print(list(filtered_data)) # [1, 2, 3]


Пример с четными числами:
def is_even(x): return x % 2 == 0
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = filter(is_even, numbers)
print(list(even_numbers)) # [2, 4, 6]


reduce(): аккумулируем значения

Функция из модуля functools, применяется для накопления результата по итерации:
from functools import reduce

def add(x, y): return x + y
numbers = [1, 2, 3, 4, 5]
result = reduce(add, numbers)
print(result) # 15


Пример нахождения максимума:
def max_value(x, y): return x if x > y else y
numbers = [10, 2, 33, 4, 7]
result = reduce(max_value, numbers)
print(result) # 33


Библиотека питониста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥16👍4❤‍🔥22



tgoop.com/pyproglib/6745
Create:
Last Update:

🪅 Команда дня: разбираемся с функциями высшего порядка

Хотите писать чистый, читаемый и лаконичный код без явных циклов? Тогда самое время освоить функции высшего порядка — map(), filter() и reduce().

Эти инструменты из арсенала функционального программирования помогают эффективно обрабатывать и трансформировать данные. А главное — они уже встроены в Python и легко применимы на практике.

💡 Что такое функции высшего порядка

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

В Python это не только map(), filter() и reduce(), но и любые функции, работающие с другими функциями.

map(): применяем функцию ко всем элементам

Используется для трансформации каждого элемента в итерируемом объекте:

string_numbers = ["1", "2", "3", "4"]
int_numbers = map(int, string_numbers)
print(list(int_numbers)) # [1, 2, 3, 4]


Или, например:
def add_five(x): return x + 5
numbers = [1, 2, 3]
result = map(add_five, numbers)
print(list(result)) # [6, 7, 8]


filter(): фильтруем по условию

Отбирает элементы, удовлетворяющие определённому условию:
data = [0, None, 1, 2, None, 3]
filtered_data = filter(None, data)
print(list(filtered_data)) # [1, 2, 3]


Пример с четными числами:
def is_even(x): return x % 2 == 0
numbers = [1, 2, 3, 4, 5, 6]
even_numbers = filter(is_even, numbers)
print(list(even_numbers)) # [2, 4, 6]


reduce(): аккумулируем значения

Функция из модуля functools, применяется для накопления результата по итерации:
from functools import reduce

def add(x, y): return x + y
numbers = [1, 2, 3, 4, 5]
result = reduce(add, numbers)
print(result) # 15


Пример нахождения максимума:
def max_value(x, y): return x if x > y else y
numbers = [10, 2, 33, 4, 7]
result = reduce(max_value, numbers)
print(result) # 33


Библиотека питониста #буст

BY Библиотека питониста | Python, Django, Flask


Share with your friend now:
tgoop.com/pyproglib/6745

View MORE
Open in Telegram


Telegram News

Date: |

The group’s featured image is of a Pepe frog yelling, often referred to as the “REEEEEEE” meme. Pepe the Frog was created back in 2005 by Matt Furie and has since become an internet symbol for meme culture and “degen” culture. Your posting frequency depends on the topic of your channel. If you have a news channel, it’s OK to publish new content every day (or even every hour). For other industries, stick with 2-3 large posts a week. According to media reports, the privacy watchdog was considering “blacklisting” some online platforms that have repeatedly posted doxxing information, with sources saying most messages were shared on Telegram. Deputy District Judge Peter Hui sentenced computer technician Ng Man-ho on Thursday, a month after the 27-year-old, who ran a Telegram group called SUCK Channel, was found guilty of seven charges of conspiring to incite others to commit illegal acts during the 2019 extradition bill protests and subsequent months. Add the logo from your device. Adjust the visible area of your image. Congratulations! Now your Telegram channel has a face Click “Save”.!
from us


Telegram Библиотека питониста | Python, Django, Flask
FROM American