Используйте эти приемы и методы…

В этом посте мы расскажем о расширенных модулях Python и о том, как вы можете использовать их в своем коде.

Функции фильтра

В python фильтр создает список элементов, для которых функция возвращает значение true. Фильтр похож на цикл for, но это встроенная функция, которая работает быстрее.

Синтаксис:

фильтр (функция, итерации)

Фильтр также может принимать в качестве параметра пользовательские функции, а также лямбда-функции. И Filter, и Range требуют, чтобы вызовы списка отображали все их результаты.

Пример :

f_list = список (фильтр (лямбда a: (a% 2! = 0), список1))

Реализация -

marks = [95, 40, 68, 95, 67, 61, 88, 23, 38, 92]
def stud(score):
    return score < 33
fail_list = list(filter(stud, marks))
print(fail_list)

Выход -

[23]

Уменьшить функции

Функция Reduce (reduce ()) применяет функцию к элементам последовательности слева направо, начиная с первых двух элементов в последовательности. Reduce вызывается с помощью лямбда-функции и итерации, и возвращается новый сокращенный результат.

Синтаксис -

reduce (func, iterable [, initial])

Реализация -

from functools import reduce
list = [20, 40, 70, 30]
print(reduce(lambda a, b: a - b, list))

Выход -

-120

Функции карты

В python Map позволяет обрабатывать и преобразовывать элементы итераций или коллекций без использования цикла for. Функция map () применяет данную функцию к каждому элементу данной итерируемой конструкции (то есть спискам, кортежам и т. Д.) И возвращает объект карты.

Синтаксис -

карта (функция, итерация)

Реализация -

numbers = [1,2,3,4,5]
strings = ['s', 't', 'x', 'y', 'z']
mapped_list = list(map(lambda x, y: (x, y), strings, numbers))
print(mapped_list)

Выход -

[('s', 1), ('t', 2), ('x', 3), ('y', 4), ('z', 5)]

Куча

Структура данных, в которой элементы хранятся в порядке «последним поступил - первым ушел» (LIFO).

Методы, используемые в стеке -

  • top () - возвращает адрес последнего элемента стека.
  • push (i) - чтобы добавить элемент вверху стека
  • pop () - для удаления самого верхнего элемента стека.

Реализация -

class Stack:
    def __init__(self):
          self.items = []
    def isEmpty(self):
          return self.items == []
    def push(self, item):
          self.items.append(item)
    def pop(self):
          return self.items.pop()

Одна из лучших статей, которые я нашел в стеке тем (обязательно к прочтению): Как решать вопросы программирования на Python с помощью стека, автор Лейхуа Йе, доктор философии. Исследователь

Закрытие

В python у нас есть функции внутри функций, которые известны как вложенная функция. Замыкание - это функциональный объект, который запоминает значения в охватывающих областях, даже если они не присутствуют в памяти. Используя замыкания, мы можем избежать использования глобальных переменных и реализовать скрытие данных. Чтобы создать замыкание в Python, мы должны иметь - вложенную функцию (функция внутри функции), а вложенная функция должна ссылаться на значение, определенное во включающей функции. Функция включения должна возвращать вложенную функцию. Декораторы Python широко используют замыкания.

Реализация -

def test(n):
    def mul(x):
        return x * n
    return mul
obj1 = test(8)
print(obj1(9))

Выход -

72

Advanced Python Made Easy, часть 6: скоро

Спасибо за прочтение. Продолжайте кодировать;)

Хотите прочитать юмор программистов?









Рекомендуемые статьи -