04 Марта 2024
16

Появился геймплейный трейлер MMO Dune: Awakening

Проснись, Нео

Игра разрабатывается на UE5 студией Fancom известной по Conan: Exiles. У MMO по «Дюне» пока нет даты релиза, но желающие могут подать заявку на участие в бета-тестировании.

2

Лямбда-функция в Python

Python lambdas - это небольшие, анонимные, суб-синтаксические функции, которые более ограничены, но короче, чем обычные функции Python.

В этой статье мы увидим все о лямбде. Мы обсудим и постараемся ответить на следующий вопрос о лямбде:

  1. Откуда появилась лямбда

  2. Что такое лямбда-функция

  3. Как использовать лямбда-функцию

  4. Когда следует избегать лямбда-функции

  5. Альтернативы лямбда

Лямбда - это концепция не только в Python, она используется в других языках программирования, таких как Java, C #, C ++ и т. д. Концепция лямбда в языках программирования пришла из вычислительной математики.

Откуда появилась лямбда

История лямбда началась еще в 30-х годах прошлого века. Алонзо Черч, наиболее известный своим лямбда-исчислением, тезисом Черча – Тьюринга, был американским математиком и логиком, формализовавшим лямбда-исчисление. Функциональные языки берут свое начало в математической логике и лямбда-исчислении, в то время как ключевые языки программирования используют модель вычислений на основе состояний, разработанную Аланом Тьюрингом. Две вычислительные модели, лямбда-исчисление и машины Тьюринга, можно преобразовать в одну. Это сходство известно как гипотеза Черча-Тьюринга.

Функциональные языки, такие как Haskell и Lisp, наследуют лямбда-исчисление, но такие языки, как Python или C, наследуют императивное программирование.

Первоначально Python не был функциональным языком, но на более поздних этапах он принимает несколько функциональных концепций.

Что такое лямбда-функция

Лямбда-функции - это анонимные функции в Python. Лямбда-функции похожи на обычные функции. Разница между обычной функцией и лямбда-функцией заключается в том, что они могут быть определены без имени, но обычные функции определяются с помощью ключевого слова def.

Ключевое слово lambda используется для определения анонимной или лямбда-функции.

Если мы сравним лямбда-функцию и обычную функцию, то,

  1. Лямбда - функция может принимать любое число аргументов, но может иметь только одно выражение, в то время как обычная функция имеет точное количество аргументов, которые мы объявляем в момент определения.

  2. Лямбда-функция - это однострочные функция. Ее тело содержит выражение в той же строке, в которой оно определено. В обычных функциях, функции содержат блоки тела, в которых определены для выполнения некоторые операторы.

  3. Поскольку лямбда - это однострочная функция, ее можно вызвать мгновенно, но обычная функция должна вызывать сама себя и требовать времени для вызова.

    x = lambda x,y : x * y

    print(x(3,4))

    x = ( lambda x,y : x*y) (2,3)

    print(x)

В приведенном выше коде показана лямбда-функция, которая дает произведение двух переменных x и y. В приведенном выше примере x - это переменная, которая будет хранить возвращаемое значение лямбда-выражения.

Части лямбда-выражения.

Ключевое слово - лямбда.

Аргументы - x и y.

Выражение - x * y

Мы можем передать аргументы функции, заключив функцию и ее аргумент в круглые скобки:

Ниже приведен пример передачи аргументов в одной строке.

x = ( lambda x,y : x*y) (2,3)

print(x)

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

Как использовать лямбда-функцию

До сих пор я излогал теоритические сведения о лямбда, поэтому мы разберемся, как использовать лямбда, с помощью примеров.

Пример 1 Напишите программу для вычисления экспоненты с помощью лямбда-функции.

Чтобы решить приведенный выше пример, я создал очень красивую визуализацию, чтобы понять процесс. Вы можете решить это таким образом:

  1. Сначала я определяю лямбда-выражение для вычисления экспоненты.

  2. Передаю это выражение лямбда-функции, представленной квадратным прямоугольником.

  3. Лямбда-функция представлена прямоугольником. Она даст вам результат после выполнения расчета.

  4. Код ниже.

    Exp = (lambda x,y : x**y) (4,4)

    print(Exp)

Когда следует избегать лямбда-функции

Итак, нам нужно избегать лямбда для простых задач и понимать использование лямбда.

Когда мы использовали лямбда-функцию, мы не использовали имя функции, и не было необходимости явно вызывать лямбда-функцию, поэтому лямбда называется анонимной функцией.

Для обычной функции мы определяем имя функции print_line, и там также есть тело, но в случае лямбда-функции тела не было. Это была одинарная линия.

Вот некоторые моменты против использования лямбда-функции в Python:

  1. Читаемость кода

  2. Заставлять мыслить функционально

  3. Странный синтаксис

  4. Загадочный стиль

Альтернативы лямбда

  1. Понимание списка.

  2. Генераторы.

Понимание списков - лучшая альтернатива лямбда. В некоторых случаях лямбда-выражение используется с функциями map (), reduce () и filter (), но то же самое может быть выполнено с пониманием списка вместе с циклом for.

Мой канал по python в тг по Python: https://t.me/python_scrypt (обзор библиотек, шпаргалки, вопросы с собесов)

Ставь + если полезно!

Показать полностью
489

Вилка или ложка?2

После очередного замечания жены, возник у меня вопрос, неужели я один такой?..
Суть претензии: что когда я ем принимаю пищу, то чаще пользуюсь ложкой, чем вилкой.. Точнее всегда, когда можно воспользоваться ложкой, я ей пользуюсь!
Использую вилку только в тех случаях, когда ложкой не справиться.
А по мнению жены, я "веду себя как абориген" когда мелкие макароны (рожки), ем ложкой, и даже рис или гречку, по её мнению, "нормальные люди" едят вилкой.
Вот у меня с детства выработалось чёткое мнение, что вилкой надо протыкать, а ложкой черпать. И когда ты ужинаешь гречкой с котлетой, запивая стопочкой, нет ничего предосудительного разломать котлету ложкой, на кусочки помельче, чтобы потом всё это ложкой отправить в жерло желудка)
а Вилка по сути нужна только для крупнолистового салата, типа Цезарь. И точно никак не для оливьешечки или винегрета.
И вот вопрос: кто чем ест?)
Ясное дело плов руками, а ежей пинцетом)
А вот обычную повседневную еду?)

Вилка или ложка?

Подскажите, пожалуйста пиратское ПО для ТВ

Очень хочется порадовать отца. Он любит смотреть разное кино. В последнее время в окко и в других платформах не появляются новые фильмы, да и старые постепенно пропадают. Может есть интуитивное ПО по просмотру пиратских фильмов?

Мидий

Интересно в какой момент человечество решило кушать мидий и всяких морских гадов? Идет такой доисторический человек. Видит в воде непонятное существо и такой «Мне надо это попробовать». Или же стоит корова и теленок. И человек такой «Теленок сосет молоко, может и мне присосаться?»
Всегда было интересно как человек пришел к такому странному решению.

Мидий
Показать полностью 1
Мои подписки
Подписывайтесь на интересные вам теги, сообщества, авторов, волны постов — и читайте свои любимые темы в этой ленте.
Чтобы добавить подписку, нужно авторизоваться.

Отличная работа, все прочитано! Выберите