Программирование
5 самых надежных функций в программировании на Python
Функции Python повышают вашу производительность, сохраняя ваш код чистым, ясным и коротким!
Python предлагает множество встроенных функций!
Программисты Python используют их для быстрого, четкого и более похожего на Python стиля написания кода.
Здесь я обсуждаю 5 самых мощных и быстрых встроенных функций, которые я освоил (и, конечно же, сможете) за 1 минуту или меньше. ⏳
Я часто использую их в своих проектах, чтобы сделать код быстрее и понятнее.
Эти встроенные функции сделают вашу программу чистой, ясной, короткой и простой для понимания.
Давайте прыгать!
Функция карты
Функция map() применяет указанную функцию к каждому элементу в итерируемом объекте. Сам его синтаксис говорит сам за себя.
map(function,iterable)
Например, давайте создадим функцию, возвращающую входное слово в верхнем регистре. А затем сопоставьте эту функцию с каждым элементом в списке.
Вот и все! Функция makeupper()
применяется к каждому элементу в списке colors
.
В моем последнем проекте функция map()
была в 1,5 раза быстрее ⚡, чем цикл for
для применения сложной функции к каждому элементу в списке.
Вот сравнение времени выполнения простой функции ⏳.
Наряду с более быстрым выполнением функция map()
улучшает читаемость кода.
перечислить функцию
Иногда при работе с итераторами нам также необходимо иметь счетчик итераций. ♻️
enumerate() - это решение!!
Функция enumerate() добавляет счетчик к итерируемому объекту и возвращает его в виде перечисляемого объекта. Этот объект можно использовать непосредственно в циклах for
и даже можно преобразовать в список кортежей.
Вот его синтаксис: enumerate(iterable, start=0)
iterable
должен быть последовательностью или некоторым объектом, поддерживающим итерацию. Поскольку Python — это язык с индексом 0, счетчик итераций по умолчанию начинается с 0. Конечно, вы можете изменить начальный номер счетчика итераций.
Давайте продолжим с примером цветов из предыдущей функции.
colors = ['red', 'yellow', 'green', 'black'] result = enumerate(colors)
В этом примере result
— это перечисляемый объект, который можно напрямую использовать в цикле for
и даже преобразовать в список.
Функция почтового индекса
Функция zip() используется для использования аналогичного индекса нескольких контейнеров, чтобы их можно было использовать как единое целое.
Синтаксис так же прост, как и определение: zip(iterables)
Он создает кортеж с одним элементом из каждого контейнера или итерации.
Возьмем пример двух списков.
colors = ['red', 'yellow', 'green', 'black'] fruits = ['apple', 'pineapple', 'grapes', 'cherry']
Используя функцию zip() в цикле for,
zip() часто используется в случаях, когда предполагается, что контейнеры имеют одинаковую длину. Однако, если контейнеры имеют разную длину, функция zip()
останавливается, когда заканчивается самый маленький контейнер. Пример ниже 👇
Использование функции zip(), когда контейнеры имеют разные размеры или длину,
Вы можете передавать списки, кортежи, наборы или словари через функцию zip()
.
Функция фильтра
Часто нам нужно обработать итерируемый объект и извлечь те элементы, которые удовлетворяют заданному условию.
filter() может сэкономить ваше время и усилия!
filter()
извлекает элементы из итерируемого объекта, такого как список, кортежи, в которых находятся извлеченные элементы, - это те, в которых функция возвращает значение true.
Вот синтаксис:filter(function, iterable)
Для облегчения восприятия возьмем пример. Давайте создадим функцию для проверки, в верхнем ли регистре слово или нет. А затем используйте filter()
, чтобы извлечь все слова из итерации, которые находятся в верхнем регистре.
Вот официальная документация по filter().
🚩 Узнайте, как определить функцию в одной строке, используя Тернарное условное выражение.
Лямбда-функция
Лямбда-функции используются для создания анонимных функций, то есть функций без имени. Они полезны, когда нам нужно создать функцию для выполнения одной операции и могут быть записаны в одну строку. Его синтаксис:
lambda parameters: expression
🎯 Лямбда-функции могут иметь любое количество параметров, но могут иметь только одно выражение.
Например, lambda x: x+2
Вот и все!! Только что я создал функцию, которая принимает один входной параметр x
и добавляет к нему 2
.
Однако, как видите, это анонимная функция, ее нельзя вызвать на более позднем этапе. Следовательно, чтобы вызвать ее в любое время в программе, лямбда-функция может быть назначена объекту функции, подобному этому,
add2 = lambda x: x+2
Вызов этой функции точно такой же, как вызов функции, которая была определена с помощью ключевого слова def. Например,
add2(10) # It will return 12 as output
Лямбда-функция может быть хорошим однострочником в некоторых ситуациях, таких как Получить списки.
Как показано на рисунке выше, newlist
генерируется одной строкой кода с использованием лямбда-функции.
Подводя итог,
Я нашел эти встроенные функции весьма удобными при использовании Python для анализа данных, а также при решении сложных задач автоматизации. Некоторые из них, такие как zip()
, map()
, полезны во многих случаях, в то время как другие, такие как функция Lambda
, в некоторых ситуациях служат лучшим однострочником.
🚩 5 самых мощных однострочников могут еще больше улучшить ваше кодирование.
Теперь вы можете стать участником Medium, зарегистрировавшись здесь, чтобы читать все истории, опубликованные мной и другими авторами. Если вы это сделаете, я получу небольшую часть вашего гонорара. Не стесняйтесь присоединиться к моему списку адресов электронной почты, чтобы оставаться в курсе моих статей.
Спасибо, что прочитали и потратили свое время!!