Step 5 (S-100237)

From Stepik Wiki
Jump to: navigation, search

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

Step 5 (S-100237) 1.png

[00:00 - 00:17] еще 1 библиотека и мы сможем найти какие то полезные вещи для того чтобы применять функций является инвестором проекта functools и мы рассмотрим главные функции из нее которое и делает я такой замечательной эта функция partial функционал позволяет вам запомнить некоторые аргументы с которыми мы хотели бы вызвать функцию


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


[00:34 - 00:53] все честно когда мы передаем в строке они являются двоичными сначала запустим конструкторы нашего класса link building него строку 1 1 0 1 укажем что это точно системе счисления мы считаем своим образом and beauty в том что значение насчет внешнего числа 1 1 0 1 ты на самом деле 13


Step 5 (S-100237) 2.png

[00:53 - 01:10] однако мы хотим написать функцию которая принимала аргументом лишь 1 число а дело на самом деле то же самое я бы вызвала функция into указывала явным аргументам да есть равны 2 для этого нам нужна функция пошел из библиотеки functools мы можем указать нам нужна функция с уже частично приведенными аргументами


[01:10 - 01:28] мы назовем ее скажем что этот partial а принимать все функцию и она понимает аргумента и с равны 2 тогда если мы попробуем написать что икс равно им то 2 наша строка 1 1 0 1 затем вывести на экран


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


Step 5 (S-100237) 3.png

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


[02:06 - 02:20] и частично в и меня к ней аргумент а key который должен item ветер от - 1 то есть последний элемент теперь давайте насчет запустим увидимся в том что при 1 запуске нашего кода имена внутри


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


Step 5 (S-100237) 4.png

Step 5 (S-100237) 5.png

[02:39 - 02:55] и запустим на нем а затем выведем во на экран даже увидимся в том что мы смогли отсортировать наш список который содержал строки по последнему элементов в строке то есть по последним символов


Step 5 (S-100237) 6.png

[02:55 - 03:13] сначала следует строка заканчивается быстро которые заканчиваются на в и затем следует строка заканчивается на ц данном уроке вы сами рассмотрели некоторые подходы и некоторые библиотеки которые мы можем использовать по так называемым функциональном подходе мы сами считали что почти все являются функциями даже конструкторы типов


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