Функциональное программирование на Python

  Рет қаралды 94,060

Тимофей Хирьянов

Тимофей Хирьянов

Күн бұрын

Пікірлер: 195
@tkhirianov
@tkhirianov 3 жыл бұрын
Предлагаю помочь Тимофею 7 лет из Набережных Челнов восстановить ухо: bolshie-dela.com/podarite-vozmozhnost-slyshat-timofey-smirnov-7-let-g-naberezhnye-chelny
@brakesham6400
@brakesham6400 3 жыл бұрын
здравствуйте, сморю ваши лекции по python, вы всё очень подробно и ясно объясняете, спасибо вам!
@RomanShagrov
@RomanShagrov 3 жыл бұрын
Тимофей, такие операцию делают по ОМС бесплатно.
@МихаилАлександрвич
@МихаилАлександрвич 3 жыл бұрын
@@RomanShagrov а ещё у нас средняя зп по стране 40к, продолжительность жизни 80, а колбасу делают из мяса.
@sublimelolka4669
@sublimelolka4669 3 жыл бұрын
Снапшоты надо было делать
@andersonmauricio209
@andersonmauricio209 3 жыл бұрын
i know Im kind of off topic but does anyone know of a good site to stream new movies online ?
@iritaka
@iritaka 3 жыл бұрын
Тайм-коды: итераторы, генераторы, map(), лямбда-функции, цикл for, range, list comprehension 0:00 Языки Программирования: 1. - императивные (ООП в т.ч.), 2. - функциональные, 3. - логические (Prolog) 3:30 определение Алгоритм. Алгоритм - это вычислимая функция Алгоритм - это последовательность команд, означающих действие, на формальном языке исполнителя, ведущая к цели за конечное время 4:50 Императивные языки: блок-схемы, ассемблер, машинные коды, в которых чётко, строго определена последовательность действий 6:55 Функциональное программирование: не надо описывать последовательность действий 10:45 логическое программирование: последовательность действий тоже не определена и не задана, но вся программа описывается логическими предикатами 11:25 между императивными и функциональными языками есть некое взаимодействие 12:13 в чистых функц. языках Нет Переменных. Есть: функции, константы и локации. Нет: переменных, присваивания, массивов, изменяемых структур данных, циклов while 16:01 Код. Погружение в функц. программирование 21:20 циклы и рекурсия взаимозаменяемы 22:31 Код. Черепашка. def go-snowy() 24:23 чистые функции и не чистые (pure function и non-pure function). Не-чистые функции подразумевают действия. Чистые - математические 31:42 Итерируемые объекты. Последовательности 32:02 4 вида функций: 1-ф: получает конкретное число параметров, возвращает жёство фиксированное количество чисел 33:47 def f (a, b, c) функция, которая возвращает вектор значений (кортеж) 36:02 2-ф: функция, которой мы даём 1 значение, а она выплёвывает нам серию. Функция - генератор 40:35 3-ф: reduce() как аккумулятор. Входящий - последовательность, возвращает - 1. Редуктор, индуктивные функции 44:19 4-ф: функции обработки последовательности -> последовательности поэлементно 46:05 Код. Как передать несколько параметров в функцию 48:42 generator object Когда именно вычисляется итерируемый объект (f(x) for x in A) 54:21 2 способа применить функцию в параметр: 1) использовать генератор, 2) функция map. Это функтор. Функция высшего порядка. В параметр функции подаётся функция. Функция в качестве объекта. Функция(объект) первого рода. В результате вычислений может появиться новая функция, которую можно return 57:53 Вычислительный процесс 59:28 Код. Пример: функция с параметром-функцией. def double_performer(f). Функции-функторы 1:04:46 map(func, *iterables) -->map object. Т.е. применение какой-то конкретной функции f ко всем элементам итерируемого объекта А: map(f, A) 1:07:17 есть возможность осуществлять фильтрацию в итератерах: condition filter 1:08:45 генератор умеет и maping и filtering одновременно 1:08:56 Код. range(start, stop, step) - это не список, не массив, это объект. type(range()). Арифметическая прогрессия, которая вычисляет числа ровно в тот момент, когда к нему обратились 1:13 39 Лямбда-функции. Безымянные функции. lambda x : x*x == def f(x): return x*x, только без идентификатора f 1:18:35 Питон является мультипарадигменным языком, он не бьет по рукам при смене подхода 1:21:06 Презентация. Функциональное программирование. 1) итерируемые объекты, 2) генераторы и итераторы, 3) принцип работы for, 4) объект range, 5) ключевое слово yield, 6) генераторы itertools, 7) сопроцессы, 8) работа с файлами 1:21:34 Итерируемые объекты. Списки, срезы, удаление, строки, кортеж (без круглых скобочек будет все равно именно tuple), сравнение 1:22:15 id() - идентификатор 1:24:11 словари - это хэш таблица, завернутая уже в Питоне в готовый объект. В ней ключам соответствуют значения. Ключи могут быть разного типа, лишь бы они были бы хешироабельными (можно было бы вычислить хэш-сумму от них) Значения - изменяемы, ключи - нет 1:25:07 zip(iter, iter) 1:25:43 конструкторы списков, кортежей умеют кушать итерируемые объекты в качестве параметра 1:27:38 i = iter(C) доить итерируемый объект не доильным автоматом (for), а руками по одной next(i) Созданный ранее объект одноразовый, потому что делается на лету 1:30:30 цикл for позволяет сразу распаковывать zip() (бежать сразу парой переменных по списку кортежей 1:31:04 enumerate("HELLO"). Возвращает - кортежи (итер. объект, прицепляя к нему нумерки) 1:34:46 генераторы и итераторы 1:36:10 генератор - это частный случай итерируемых объектов 1:37:43 Код. arithm_progression(start, stop, step) - генератор. yield вместо return выдаёт всего 1 следующее значение и засыпает Сопрограмма - вычисление отложенных до того момента, когда реально понадобились значения, а не пытается сохранить все их в памяти 1:46:07 принципы работы for, List Comprehensions 1:46:25 функции библиотеки NumPy Arange(), Linspace() 1:47:58 генерация диапазона с плавающей запятой без использования сторонних модулей 1:48:09 генераторы библиотеки itertools. count, cycle, repeat, accumulate, combinations, compress, dropwhile 1:49:36 Код. permutation, groupby 1:50:56 Код. starmap, tee, zip_longest 1:52:07 Сопроцессы = сопрограммы (не параллельно, а перебрасывая друг другу выполнение) 1:52:34 работа с файлами 1:53:37 Практическая часть. 1:55:41 Код. reduce() в библиотеках functools, itertools Скачать конспект лекции: www.patreon.com/iritaka
@ulikkulinyak1126
@ulikkulinyak1126 3 жыл бұрын
you are a hero!
@iritaka
@iritaka 3 жыл бұрын
@@ulikkulinyak1126 thanks!
@farafilka
@farafilka 3 жыл бұрын
Не хватает таймкода с заклинанием из Гарри)
@elnurmaharramov9319
@elnurmaharramov9319 Жыл бұрын
Спасибо Вам за ваш труд.
@nazar_z_
@nazar_z_ 3 жыл бұрын
Знаком с Python 2 года. За это время просмотрел множество курсов, но только после Ваших лекций начал понимать как работают функции, которыми давно пользуюсь. А некоторыми не пользовался потому что не понимал как они работают. Благодарю Вас за наилучшее объяснение материала!!! Завидую Вашим студентам очной формы!!!
@allyouneedisbot
@allyouneedisbot 3 жыл бұрын
"Фонарик в небо поднимал? В автозак" - очень сильно! Респект
@Toksi86
@Toksi86 3 жыл бұрын
Большое спасибо за бесплатное образование вам и университету. В наше время мало кто готов на такое пойти.
@alekseyziablikov2940
@alekseyziablikov2940 3 жыл бұрын
Это самый лучший канал IT
@tkhirianov
@tkhirianov 3 жыл бұрын
Спасибо. Осталось не испортиться.
@kuhnivikont
@kuhnivikont 3 жыл бұрын
@@tkhirianov Смотрю вас второй год, и становится только лучше. Жаль, JS нету.
@alexyurk4825
@alexyurk4825 3 жыл бұрын
Вы видимо не добрались еще до freecodecamp. Вот у него реально конкурентов в свободном доступе нет.
@tobemaguire7389
@tobemaguire7389 3 жыл бұрын
испытываю радость и удовольствие от лекций Тимофея. спасибо огромное за ценный материал и возможность изучать Python!
@ДанисТехник
@ДанисТехник Ай бұрын
Очень признателен за подачу материала, на ваши плечи лег тот труд, за который в своё время получал ЗП мой преподаватель информатики)
@Markisi0
@Markisi0 3 жыл бұрын
1:07:47 Шикарный пример с фонариком! )) Тимофей Фёдорович, шикарно!
@LSE13
@LSE13 3 жыл бұрын
тоже улыбнуло)
@BlackShadow_86
@BlackShadow_86 2 жыл бұрын
Уважаемый Тимофей Фёдорович! Огромное Вам спасибо! Вы преподаватель от Бога, здоровья Вам и удачи!!!
@Antoniolavoisier1
@Antoniolavoisier1 3 жыл бұрын
Присоединяюсь к тем, кто говорит спасибо, ваши труды хорошо заходят после тяжелого дня, надеюсь, вы не бросите.
@it_is_muchomor
@it_is_muchomor 3 жыл бұрын
Вот пришел человек, и все объяснил) Не могу выразить словами свою благодарность!
@popcorn109i
@popcorn109i 3 жыл бұрын
"Нет переменных, нет присваивания ... нет ножек )))" Оч улыбнуло) 13:50
@pypypy4228
@pypypy4228 3 жыл бұрын
В мире, когда в мире IT многие знают о многом понемногу без хороших базовых знаний, этот препод - жемчужина. Чувак, я тебя люблю :)!
@ИгорьГорчинский-у1щ
@ИгорьГорчинский-у1щ 3 жыл бұрын
Я изучаю программирование и мне 43. Часто, когда падает мотивация к обучению, я смотрю ваш канал. "доить" и "жмякать" взял на вооружение. Спасибо Вам Тимофей!
@zamermen
@zamermen 3 жыл бұрын
мне скоро 40) последние три года к началу весны прям тяга к програмированию, к лету утихает, там огороды/рыбалка/природа и все такое мешает. Както бы довести уже до ума, прикидывал примерно что год нужен чтобы на стартовый уровень выйти
@alexyurk4825
@alexyurk4825 3 жыл бұрын
@@zamermen если нужен год, чтобы только выйти на стартовый уровень, значит что-то не так. Либо нет способностей, либо процесс обучения построен неправильно.
@zamermen
@zamermen 3 жыл бұрын
@@alexyurk4825 катастрофически не хватает времени, более менее чтото поучить удается по выходным
@alexyurk4825
@alexyurk4825 3 жыл бұрын
@@zamermen трудно поверить, что в будни нет ни минуты свободного времени )) Вы с работы сразу в койку? Я лично занимаюсь часто перед сном. Кто-то по вечерам телек смотрит, кто-то художественную литературу читает, кто-то играет, ну а я перед сном час-другой читаю, смотрю уроки или пытаюсь писать что-то. Трудно представить человека, у которого нет вообще свободного времени перед сном. Другой вопрос, что иногда не хочется голову грузить перед сном. Ну тут от желания все зависит в конечном итоге. А так вообще лучше что-то изучать каждый день по чуть-чуть, нежели сразу пытаться запихнуть в себя много за выходные. Хуже усваивается. По себе знаю, если попытаться за день охватить сразу несколько тем, то в мозгу мало что задержится, даже если ты в совокупности потратил столько же времени, сколько потратил бы с разбивкой на несколько дней. Просто эффективность восприятия информации падает со временем. Поэтому лучше понемногу, но регулярно.
@vkromm
@vkromm 3 жыл бұрын
@@alexyurk4825 Ахаха ) Расскажите моим 3м детям, собаке и большому дому (где надо как минимум чистить снег), двум работам и жене, что у меня дофига времени на изучения ) Как только я всех утолкал в 24:00 я падаю без сил. Ведь в 6:30 вставать. Я не плачусь, просто ситуация у всех разная.
@СтепанМакаров-г6ц
@СтепанМакаров-г6ц 2 жыл бұрын
Спасибо Тимофей, вывел для себя некоторые вещи. Спасибо что вы есть.
@TheRedesc
@TheRedesc 3 жыл бұрын
Урок 1 - 1 час, урок 2 - 2 часа, боюсь дальше смотреть)) Спасибо, за то что выкладываете материал!
@viz64II
@viz64II 3 жыл бұрын
Крутые лекции, за товарища майора отдельный лайк
@holyathome
@holyathome Жыл бұрын
Спасибо ! Привет из Канады
@mylittlebigcom
@mylittlebigcom 3 жыл бұрын
Преподавать - это призвание... Спасибо!
@jiper100
@jiper100 3 жыл бұрын
Тимофей Вы лучший лектор! Огромное спасибо!
@НурланМукамбаев
@НурланМукамбаев 2 жыл бұрын
Великий учитель. Аристотель программирования. Учитесь думать - а затем поступать. 🔥🔥🔥
@ПавелКоростелев-э2д
@ПавелКоростелев-э2д 3 жыл бұрын
Вообще не имею отношения к программированию, но залип на 40 минут)) Вы очень захватывающе рассказываете!
@Владимир-щ8н3ь
@Владимир-щ8н3ь 3 жыл бұрын
Спасибо за уроки, дорогой учитель)
@SergeyChernetsky
@SergeyChernetsky 3 жыл бұрын
Обожаю ваши лекции! Империо!)))
@glad1ator71
@glad1ator71 3 жыл бұрын
Entertaining and educational! Thank You, Mr. Khyranov.
@kpsafezone3185
@kpsafezone3185 3 жыл бұрын
Кстати, а будет курс по нейронным сетям? В исполнении Тимофея очень хотелось бы посмотреть и послушать.
@alexanderskusnov5119
@alexanderskusnov5119 3 жыл бұрын
Последовательность -> последовательность 1) В MatLab переменные это обычно матрицы, поэтому sin(x) выдаст одно число для числа, вектор для вектора, матрицу для матрицы. 2) В Haskell два классических примера: map (функция применяется для каждого элемента контейнера) и filter (предикат выбрасывает ненужные элементы входной последовательности)
@tkhirianov
@tkhirianov 3 жыл бұрын
Да, когда-нибудь ради интереса доберусь и до Haskell.
@alexanderskusnov5119
@alexanderskusnov5119 3 жыл бұрын
@@tkhirianov 1) только надо любить математические абстракции: полугруппа, группа, функтор, аппликативный функтор, моноид, монада, стрелка Клейсли... Да ещё иметь представление о лямбда-исчислении, комбинаторах, теории категорий. 2) Как-то лень смотреть приоритет операторов, поэтому впадаю в ступор, когда вижу нечто такое: (MaybeT fab) (MaybeT mma) = MaybeT $ () fab mma 3) На лекциях (Stepik) Денис Москвин рассказывал, что если удастся сделать цепочку из генераторов (число -> последовательность) и свёрток (последовательность -> число), то происходит очень эффективная оптимизация (это математики вывели), так что по скорости обработки больших данных Haskell может быть наравне с C++ (конечно, и от алгоритма зависит). Кстати, посмотреть работу профессионала можно на tsoding: kzbin.info/aero/PLguYJK7ydFE4aS8fq4D6DqjF6qsysxTnx
@maximkuchiga141
@maximkuchiga141 2 жыл бұрын
Благодарю за ваши труды! мне бы такого преподавателя по информатике)))
@РоманШтырев-м7с
@РоманШтырев-м7с 3 жыл бұрын
Отличные уроки!.Спасибо.
@martessq6393
@martessq6393 3 жыл бұрын
А причина всему - эволюционное наследование. Тимофей Фёдорович, Вы философ! Рад видеть.
@KrassRome
@KrassRome 3 жыл бұрын
В генетике и биологии заимствование свойств в рамках "царства" называется горизонтальным переносом генов. ...просто так для общего развития.. И спасибо вам за Вашу РАБОТУ.
@АленаВзорова
@АленаВзорова 2 жыл бұрын
Спасибо, спасибо, спасибо!!! Лучше любых платных курсов.
@ealbitg1043
@ealbitg1043 3 жыл бұрын
Авансом ставлю лайк, чтобы наш покорный слуга не переставал выкладывать курс
@Toksi86
@Toksi86 3 жыл бұрын
Насколько мне известно алгоритмы ютуба не учитывают лайки до просмотра. Лучше сначала посмотреть контент, а потом поставить лайк. Но информация не проверена
@presidentdolphinislanderi5532
@presidentdolphinislanderi5532 3 жыл бұрын
Спасибо за выпуски!
@Andrew-pn8zx
@Andrew-pn8zx 3 жыл бұрын
Уважаемый Тимофей Хирьянов. Спасибо за ваши лекции! Вы выкладывали практику по программированию на python 3. А по этим лекциям будет практика?
@tkhirianov
@tkhirianov 3 жыл бұрын
Смотря что ей считать. Добавил ссылку на репозиторий с материалами. См. под видео.
@unaibekovbakhyt6517
@unaibekovbakhyt6517 2 жыл бұрын
Большое спасибо за замечательные уроки. Будут ли остальные видео из курса?
@alntruisrtbredford
@alntruisrtbredford 3 жыл бұрын
вот Вы, Тимофей, смеетесь, а у меня на фразе "Волан-де-Морт меня заколдовал" комп ссинеэкранился ))
@НиктоНиктоев-щ7ю
@НиктоНиктоев-щ7ю 3 жыл бұрын
46:30 -Я не могу запустить эту функцию от списка! Ой, нет, я могу...чертов питон!)))
@vandriichuk
@vandriichuk 3 жыл бұрын
Очень классно про функциональные возможности в Python
@MultiGriin
@MultiGriin 3 жыл бұрын
Тимофей, спасибо Вам!
@tkhirianov
@tkhirianov 3 жыл бұрын
И вам! :-)
@Ma_X64
@Ma_X64 3 жыл бұрын
Посмотрел как экшн-муви! Спасибо за лекцию!
@astanorte5662
@astanorte5662 3 жыл бұрын
Спасибо 🙏, за 5 минут про lambda 😊
@7dtd_ruplay306
@7dtd_ruplay306 3 жыл бұрын
Благодарю за уроки и труд!
@MrDespik
@MrDespik 3 жыл бұрын
Возможно узнать темы будущих лекций по Анализу данных?
@tkhirianov
@tkhirianov 3 жыл бұрын
План курса выложу в материалы на github.
@MrDespik
@MrDespik 3 жыл бұрын
@@tkhirianov спасибо!
@maximkoanticheat
@maximkoanticheat 2 жыл бұрын
Лайк за лирическое отступление про Гарри Поттера и Империо 😂
@АлександрБравис-с3о
@АлександрБравис-с3о 3 жыл бұрын
А такой вопрос, может я просто не в курсе, прямые трансляции ещё будут? Или всё?
@tkhirianov
@tkhirianov 3 жыл бұрын
Пока не будет. Очень хочется?
@АлександрБравис-с3о
@АлександрБравис-с3о 3 жыл бұрын
@@tkhirianov, да)
@qqlexa
@qqlexa 3 жыл бұрын
@@tkhirianov Очень хочется!
@dryuni
@dryuni 3 жыл бұрын
@@tkhirianov очень
@ДжеймеУилл
@ДжеймеУилл 3 жыл бұрын
@@tkhirianov оооооооочень!!!!!
@МихаилАлександрвич
@МихаилАлександрвич 3 жыл бұрын
На 1:06:04 объясните пожалуйста, как это локальная переменная переписала общую переменную. Откуда такая дерзость. В чëм же тогда вообще получается еë локальность ?
@alqueswan7164
@alqueswan7164 3 жыл бұрын
на 53:30 происходят какие то вычисления Шредингера.. Магия понятная, но не постижимая. Вычисления как бы есть, но пока мы их не захотим увидеть их нет..
@RusFarFaz
@RusFarFaz 3 жыл бұрын
34:27 это что-то новое для меня. аргументы одни и те же, а возвращает разные значения в зависимости от переменной. как так? где про это могу дополнительно прочитать?
@kotleta7643
@kotleta7643 2 жыл бұрын
Очень здорово, спасибо!
@igornaumov6900
@igornaumov6900 3 жыл бұрын
Лайк этому уважаемому господину еще до просмотра видео!
@ОлегБутанов
@ОлегБутанов 3 жыл бұрын
Курс: "Питон от Хомячка" :)) Без шуток: хомячок Тимофей классный препод для начинающих!
@LEXYteam
@LEXYteam 2 жыл бұрын
Даже волшебную палочку из Гарри Поттера для урока заготовил 5:15, человек отвественно подходит к занятиям
@kotovasya87
@kotovasya87 3 жыл бұрын
Благодарю за урок.
@ТимонЯблоков
@ТимонЯблоков 3 жыл бұрын
48:28 так "x" присваивает значение каждого элемента из A, это уже не функциональное программирование.
@maximpobihun5469
@maximpobihun5469 3 жыл бұрын
а SQL к какому "царству" относится?
@miroslavklyukovsky683
@miroslavklyukovsky683 2 жыл бұрын
Дякую!
@RuchejAlex
@RuchejAlex 3 жыл бұрын
Поправочка: майор не будет спрашивать про фонарик, там сразу в автозак.
@Qoozord
@Qoozord 3 жыл бұрын
1:57:10 - жмякать яички - каждый находит в лекции что-то свое.
@vitalmurashev1852
@vitalmurashev1852 3 жыл бұрын
вопрос не по теме 59:40 если правильно расслышал "шуранем" можно поподробнее о слове?
@tkhirianov
@tkhirianov 3 жыл бұрын
Не знаю откуда его взял. Закладывал смысл вроде "выстрелим".
@komazmt
@komazmt 3 жыл бұрын
1:44:00 "Натебе-воттебе-натебе-воттебе-да"
@alexeyshulgin4556
@alexeyshulgin4556 3 жыл бұрын
Добрый день, спасибо за очередную прекрасную лекцию. Не могли бы Вы выложить Jupiter файл?
@tkhirianov
@tkhirianov 3 жыл бұрын
Добавил ссылку на репозиторий с материалами. См. под видео.
@Ma_X64
@Ma_X64 3 жыл бұрын
"Совершил над вами введение в функциональщину" можно кратко записать как "Я вас немного офункционал" :D
@plusartfile1966
@plusartfile1966 3 жыл бұрын
ЛУЧШИЙ
@Surf391711
@Surf391711 2 жыл бұрын
A = ['a', 'b', 'c'] print(*map(lambda i, char: char*i, *zip( *enumerate(A, 1) ) )) Выведет: a bb ccc
@hunya_k
@hunya_k 3 жыл бұрын
Можно циклы заменить рекурсию. Можно пользоваться циклами, когда нужна рекурсия. Вот это уровень рекурсии))
@roma_icar
@roma_icar 3 жыл бұрын
1:28:20 "объект С опустошён. Корову подоили, корова пустая." 😂
@artemkrylov5282
@artemkrylov5282 3 жыл бұрын
Ждем ноутбук и задания в закрепе)
@tkhirianov
@tkhirianov 3 жыл бұрын
Добавил ссылку на репозиторий с материалами. См. под видео.
@АнатолийЧерников-я5е
@АнатолийЧерников-я5е 3 жыл бұрын
Почему на 1:04:09 f3 от 5 выдало 5 а не -5?
@АнатолийЧерников-я5е
@АнатолийЧерников-я5е 3 жыл бұрын
@@through-it, точно! Спасибо!
@fighterneko
@fighterneko 3 жыл бұрын
За лекции большое спасибо. А то, что в jupiter notebook показано посмотреть отдельно есть возможность? Вроде ссылку обещали в конце, но где она?
@tkhirianov
@tkhirianov 3 жыл бұрын
Добавил ссылку на репозиторий с материалами. См. под видео.
@fighterneko
@fighterneko 3 жыл бұрын
@@tkhirianov вижу. Благодарю за реакцию
@horna9109
@horna9109 3 жыл бұрын
Не забывайте ставить лайк! Надо продвигать канал в нейросети
@SemyonKalyakulin
@SemyonKalyakulin 2 жыл бұрын
На генератор ведь не надо навешивать iter, он и так уже итератор и его можно доить из коробки))
@МеляКыш
@МеляКыш 2 жыл бұрын
1:26:37 лучшее
@Username_keikhgu
@Username_keikhgu 3 жыл бұрын
Валера, верим
@ivanlunev6153
@ivanlunev6153 3 жыл бұрын
Добрый день. Возможно где-то достать ноутбук, который был в видео?
@tkhirianov
@tkhirianov 3 жыл бұрын
Добавил ссылку на репозиторий с материалами. См. под видео.
@ivanlunev6153
@ivanlunev6153 3 жыл бұрын
@@tkhirianov спасибо!
@MrNagios
@MrNagios 3 жыл бұрын
а про анализ данных когда будет?
@MrNurbolb
@MrNurbolb 3 жыл бұрын
"фонарик в небо поднимал? - тогда садись в автозак"
@MisterKoK22
@MisterKoK22 3 жыл бұрын
Императив. =)))
@servicemarket47
@servicemarket47 3 жыл бұрын
Я, лазерный мечь подымал! Считается?
@АртурЛагунов-ч6ъ
@АртурЛагунов-ч6ъ 2 жыл бұрын
def draw_koch_segment(l:float,r:int): if r==0: action = t.forward params = {"distance":l} else: action = draw_koch_segment params = {"l":l/3,"r":r-1} turns = [(t.left,60),(t.right,120),(t.left,60)] for turn in turns: action(**params) turn[0](turn[1]) action(**params) def draw_koch_polygon(l:float,r:int,n:int): for i in range(n): angle = 360/n draw_koch_segment(l,r) t.right(angle) Переписал сам кривую коха, вот только в такой реализации стало понятно что происходит.
@bbbbbb9193
@bbbbbb9193 2 жыл бұрын
Ну это лайк!!!))
@meledictrum
@meledictrum 3 жыл бұрын
Как отказаться от использования рекурсии если вложенность массива неизвестна?
@f33net
@f33net 3 жыл бұрын
Логические языки живее всех живых, Тимофей! Все PLC (ПЛК), все FPGA (ПЛИС) управляются ими. :)
@filimon4ik
@filimon4ik 3 жыл бұрын
Так точно бро)
@notslip1000
@notslip1000 3 жыл бұрын
будет ли на генераторах объясняться асинхронное программирование?)
@andreyo.945
@andreyo.945 3 жыл бұрын
Спасибо!
@dmitry_dev
@dmitry_dev Ай бұрын
Упомянуты принцип производства заводов Toyota и методологии Канбан весьма удачен. Тойота и создали этот подход.
@alexeiguirik9463
@alexeiguirik9463 3 жыл бұрын
И это все тоже замечательно. Но по прежнему остаюсь в недоумении - какое это отношение имеет к *анализу данных*?
@vkromm
@vkromm 3 жыл бұрын
Вопрос: почему из генератора можно доставать значения только по очереди? Почему нельзя сразу скажем 5е значение достать? Почему генератор обьект не знает своей длины? Это как бы и очевиднын вопросы, так и пояснение вменяемое надо...
@tkhirianov
@tkhirianov 3 жыл бұрын
Владимир, генератор - это как бы "человек на конвейере". Он ничего не хранит вообще. Просто он "прицеплен" к некоторому источнику элементов (итерируемому объекту), которые генератор умеет обрабатывать некоторым образом и "выплёвывать" наружу. Впрочем, генератор может быть и ни к чему не "прицеплен", а генерировать элементы сам, как бы "из воздуха".
@vkromm
@vkromm 3 жыл бұрын
​@@tkhirianov спасибо за ответ. Только так и не понятен ответ на первоначальный вопрос: если у источника есть скажем 100 элементов, генератор по некоему алгоритму должен создать скажем 20 элементов... Почему мы можем получать эти элементы только поочереди? Почему нельзя вызывать скажем 11й элемент? Почему генератор не знает свою длину? Тут как бы понятен ответ, ведь "чтобы знать длину нужно запустить весь алгоритм от начала до конца". Или "чтобы выдать 11й элемент всё равно надо сначала родить 10 предыдущих". Но хотелось бы ваши рассуждения на этот счет услышать. Может в одной из лекций, когда эта тема будет вновь затронута.
@BROSTEP
@BROSTEP 3 жыл бұрын
Уффф.. . Жёстко.
@МарияАгаева-ь9л
@МарияАгаева-ь9л 2 жыл бұрын
А будут ли лекции 6-10? Жду сильнее, чем сериалы=)
@tkhirianov
@tkhirianov 2 жыл бұрын
6-ю ещё могу выложить, она где-то осталась. Но вообще в том году записи плохо пошли, так что с 7-й по 10-ю нет. Это нужно переписывать. Я постараюсь, но ещё не готов.
@royalea9354
@royalea9354 2 жыл бұрын
@@tkhirianov Здравствуйте, с нетерпением ждём следующих уроков
@РовшенБердимырадов
@РовшенБердимырадов 2 жыл бұрын
Спасибо за ваш труд. Только хотел бы сказать что аль хорезми не араб.
@kpsafezone3185
@kpsafezone3185 3 жыл бұрын
Спасибо.
@waydao4958
@waydao4958 3 жыл бұрын
Философия программирования😃
@alntruisrtbredford
@alntruisrtbredford 3 жыл бұрын
это ж хорошо)) больше понимания не только кодинга, но ближайшей его окрестности
@aammssaamm
@aammssaamm 3 жыл бұрын
Что вас так смешит, как будто вам палец показали? Программирование - это решение задач, а не то что вы думали.
@Itakecareme
@Itakecareme 2 жыл бұрын
Можно ли сказать, что тимотей, это аналог имени Тимофей?)
@givgiv8726
@givgiv8726 3 жыл бұрын
Скажите сколько будет стоить ваша информация? О материалах для обучения? Если нет времени ходить на обучения, а так же этих денег для обучения в иституте?
@evgenkaban6018
@evgenkaban6018 3 жыл бұрын
от автора и его коллег есть курс по питону, загуглите, там в районе 50 тыс
@drum_bt
@drum_bt 3 жыл бұрын
спасибо!
@anifi5911
@anifi5911 3 жыл бұрын
Звук исправь динамик.хорошо?
@ОрбитОрбитус
@ОрбитОрбитус 3 жыл бұрын
Ну и насмешил переводом слова Императивный и Алгоритм, косяков не мало у Тимофея,это всё мелочи, главное он в теме рубит хорошо и преподносит это умело. Спасибо за такой труд !!!
@МаксимНиколаевичЧубин
@МаксимНиколаевичЧубин 3 жыл бұрын
Я всегда удивлялся кто придумывает совершенно дурацкие задания для экзаменов и тестов, а также для обучающих книг. А вот у вас Светлана такая мега мозг. Кто мне объяснит зачем выдумывать такое для обучения? Тимофей даёт замечательные яркие и понятные ассоциативные примеры - яйца ->омлет, фонарик -> автозак. Это правильный путь. А Светлане надо что-то в жизни менять иначе ее ждет отдельный котёл в Аду. 😄
@annieponce998
@annieponce998 2 жыл бұрын
well done)
@ИванБахтинов-д3ф
@ИванБахтинов-д3ф 3 жыл бұрын
1:32:10 И снова балуюсь == :)
@munutd9857
@munutd9857 3 жыл бұрын
👍👍👍
Параллельное программирование на Python
2:03:29
Тимофей Хирьянов
Рет қаралды 69 М.
SOLID-принципы. Введение в ООП на Python.
1:10:13
Тимофей Хирьянов
Рет қаралды 298 М.
Арыстанның айқасы, Тәуіржанның шайқасы!
25:51
QosLike / ҚосЛайк / Косылайық
Рет қаралды 700 М.
99.9% IMPOSSIBLE
00:24
STORROR
Рет қаралды 31 МЛН
It works #beatbox #tiktok
00:34
BeatboxJCOP
Рет қаралды 41 МЛН
Алгоритмы на Python 3. Лекция №1
1:20:50
Тимофей Хирьянов
Рет қаралды 5 МЛН
Информатика на Python, лекция 2, ФБВТ МФТИ (2023)
1:22:47
Тимофей Хирьянов
Рет қаралды 80 М.
Асинхронщина в Python
25:32
MoscowPython
Рет қаралды 14 М.
Джордан Питерсон - Как не топтаться на месте и идти вперед
12:03
Переводы Джордана Питерсона
Рет қаралды 51 М.