Готовы ли вы поднять свои навыки Python на новый уровень? (включая фрагменты кода)
Python — лучший язык программирования. Благодаря простому синтаксису и широкому спектру библиотек Python может помочь вам создать что угодно, от веб-приложений до научных симуляций. Кроме того, благодаря активному сообществу и множеству ресурсов у вас всегда будет поддержка, когда вы учитесь и растете.
Эти 5 основных функций обязательно должны быть в вашем наборе инструментов.
- С помощью функции
map()
вы можете легко применить указанную функцию к каждому элементу в итерируемом элементе. - Функция
reduce()
позволяет объединить последовательность элементов в одно значение. - Функция
filter()
позволяет выбирать только те элементы, которые возвращаютTrue
при передаче через функцию. - Функция
zip()
объединяет элементы из нескольких последовательностей в кортежи с помощью одного вызова функции. - А функция
enumerate()
добавляет счетчик к любому итерируемому объекту. Улучшите свои навыки программирования прямо сейчас.
Начнем!
1. map()
Функция map()
применяет указанную функцию к каждому элементу в итерируемом объекте (например, к списку, кортежу или строке). Он возвращает объект карты с результатами, которые при необходимости можно преобразовать в другие последовательности.
Вот пример использования map()
для применения функции len()
к списку строк:
def get_string_lengths(strings): return map(len, strings) strings = ['cat', 'window', 'defenestrate'] lengths = get_string_lengths(strings) print(lengths) # prints <map object at 0x10fdfa320> # convert the map object to a list lengths = list(lengths) print(lengths) # prints [3, 6, 12]
2. reduce()
Функция reduce()
применяет функцию к последовательности элементов слева направо, кумулятивно сводя элементы к одному значению. Это часть модуля functools
, поэтому вам необходимо import functools
, прежде чем вы сможете его использовать.
Вот пример использования reduce()
для умножения всех элементов в списке целых чисел:
import functools def multiply(x, y): return x * y numbers = [1, 2, 3, 4] result = functools.reduce(multiply, numbers) print(result) # prints 24
3. filter()
Функция filter()
возвращает объект фильтра, который включает только те элементы входной итерации, которые возвращают True
при передаче в указанную функцию.
Вот пример использования filter()
для получения списка только четных чисел из списка целых чисел:
def is_even(x): return x % 2 == 0 numbers = [1, 2, 3, 4, 5, 6] evens = filter(is_even, numbers) print(evens) # prints <filter object at 0x10fdfa320> # convert filter object to a list evens = list(evens) print(evens) # prints [2, 4, 6]
4. zip()
Функция zip()
принимает две или более последовательностей и возвращает список кортежей, где каждый кортеж содержит один элемент из каждой последовательности. Он используется для одновременного перебора нескольких последовательностей.
Вот пример использования zip()
для объединения двух списков строк:
colors = ['red', 'orange', 'yellow', 'green'] fruits = ['apple', 'banana', 'mango'] color_fruit_pairs = zip(colors, fruits) print(color_fruit_pairs) # prints <zip object at 0x10fdfa320> # convert the zip object to a list color_fruit_pairs = list(color_fruit_pairs) print(color_fruit_pairs) # prints [('red', 'apple'), ('orange', 'banana'), ('yellow', 'mango')]
5. enumerate()
enumerate()
— это встроенная в Python функция, которая добавляет счетчик к итерируемому объекту. Он возвращает итератор, который создает кортежи, где каждый кортеж содержит индекс элемента и сам элемент. Это может быть полезно для циклического просмотра списка и отслеживания текущего индекса или для создания списка кортежей с индексом и элементом как отдельными элементами.
Вот пример использования enumerate()
для перебора списка строк и печати индекса и элемента:
words = ['cat', 'window', 'defenestrate'] for i, word in enumerate(words): print(i, word) # Output: # 0 cat # 1 window # 2 defenestrate
Вы также можете указать начальный индекс, включив его в качестве аргумента в enumerate()
. Например:
for i, word in enumerate(words, start=1): print(i, word) # Output: # 1 cat # 2 window # 3 defenestrate
enumerate()
— полезная функция для перебора списка и отслеживания текущего индекса. Это может избавить вас от необходимости вручную создавать переменную счетчика и увеличивать ее в цикле.
Это обертка👋
В заключение я призываю вас продолжать изучать и изучать Python и все его удивительные функции. Всегда есть что узнать и открыть, и чем больше вы практикуетесь и экспериментируете с Python, тем увереннее и опытнее вы становитесь как программист. Удачного кодирования!
Спасибо за прочтение! Если вам понравилась статья, не забудьте поставить аплодисменты (до 50!) и связаться со мной в LinkedIn и подписаться на Medium, чтобы оставаться в курсе с моими новыми статьями 🤩.