Step 3 (S-100236)

From Stepik Wiki
Jump to: navigation, search

Step on Stepik: https://stepik.org/lesson/24468/step/3

Step 3 (S-100236) 1.png

[00:00 - 00:18] что мы начинаем переживать функций других функций возникает желания писать короткие функции еще более коротко и лаконично для этого в языке python есть лямбда функции лямбда функции в языке python всего лишь синтаксис для создания новых объектов функций и 70 за простой черный цвет ключевое слово лямбда


[00:18 - 00:37] затем мы указываем до двоеточие аргументы которые понимают наше функция в нашем случае аргумент икс и здесь стоит отметить что здесь вернусь и те же правила которые верны для аргументов обычных функций то сможем определить аргументы которые со звездочкой с 2 звездочками можно также выделить аргумент со значением по умолчанию


[00:37 - 00:52] затем после двоеточия следует 1 выражение этот выражение должно быть возвращаемым значением нашей функции получается что в нашем коде мы сначала создали объект функция использует синтаксис лямбды а затем присвоили имени иван ссылку на данную функцию оперативной памяти


[00:52 - 01:06] самая замечательная синтаксисе лям заключается в том что можем поставить их прямо в этой функции мы можем обратить внимание что в нашем ходим нигде не вызываем функцию и вы лишь передаем ее аргументом поэтому можем избавиться от имени иван передать лямбды целиком вместо аргументов


[01:06 - 01:24] можно брать еще основанием для отсюда поставь его сразу вот сюда убрать данную конструкцию запустить данный код убедиться в том что когда мы ведем числа основы останутся только четное синтаксис лямбда функции изначально задумывался очень простым


Step 3 (S-100236) 2.png

[01:24 - 01:40] сначала этот ничего слово лямбда затем записывай аргументы которые понимают наше функция с тему в 1 выражение пытаемся описать возвращаемое значение поэтому если вы пишете функции которые изначально что вычисляет затем возвращает значение true все таки лучше писать обычные функции


[01:40 - 01:57] написать большую функцию внутри 1 лямбды потому что нужно использовать лишь 1 выражение во 2 длинной лямбда функции очень сложно читать когда же мы еще передом функции внутри другой функции 5 есть воспоминания конечно же сортировка когда мы вызываем метод сорту списка


[01:57 - 02:12] именованный аргумент таки может вырасти до функцию которая будет сначала высчитано от всех элементов нашего списка и всем наш список будет застроен не по порядку элементов порядку значений данной функции постоянно следить за ним в таком


Step 3 (S-100236) 3.png

[02:12 - 02:29] формате список имен за каждый день описывается карнажем которая состоит из частичек данного вы хотите сортировать данные список по суммарной длине имени этим пишем данного функционала в нашем формате склеивает его по пробелу а затем возвращает длину данной строки


[02:29 - 02:48] казалось бы все просто давайте теперь считаем длину каждого имени из нашего списка вы видимо на экран затем используем этот 40 передав в качестве ключа функциональность этаж вы видимо я на экран выйдет самая длинная по длине имя это конечно же вида ван россум оно состоится 16 символов затем волосы карие


[02:48 - 03:08] оно содержит 12 символов 11 символов будет содержать склеены имиджем because так мы передали функциональных в качестве ключа и сортировке то мы будем сортировать наш список по возрастанию длины их имени то встречалась бы джон боюсь потому что его имя самая короткая темно будет хоть какая а затем избытку видом россом


Step 3 (S-100236) 4.png

[03:08 - 03:26] таким образом дополнительные функции в качестве аргумента таки мы сначала вычисли значение данной функции на каждом элементе нашего списка затем отсортируешь список именно по этим значениям однако если бы не хотел использовать функцию дважды здесь и здесь то вероятней всего просто написал 1 лямбда функцию которую бы интересовало элементом


Step 3 (S-100236) 5.png

[03:26 - 03:42] этот сорт я бы написал им в качестве аргумента и вернулся в назначении длины нашей строки которые мы склеили из элементов нашего имени name вывел на экран результаты его в правильном порядке


Step 3 (S-100236) 6.png