Python. Паттерны. Утиная типизация. Итераторы. Генераторы. Декораторы

แชร์
ฝัง
  • เผยแพร่เมื่อ 29 ก.ย. 2024
  • compscicenter.ru/
    Лекция 5 курса "Программирование на Python" (весна 2021)
    Преподаватель - Иван Бибилов
    Страница курса на сайте CS центра: bit.ly/2LywC5L

ความคิดเห็น • 15

  • @domochevsky4703
    @domochevsky4703 3 ปีที่แล้ว +7

    Хорошее объяснение декораторов

  • @Pernat1y
    @Pernat1y 3 ปีที่แล้ว +13

    2:10 - Утиная типизация
    14:34 - Итераторы, генераторы
    34:30 - Встроенные итераторы
    46:09 - Декораторы
    1:43:03 - Встроенные декораторы

  • @McGewen
    @McGewen 3 ปีที่แล้ว +1

    дядя ты понимаешь что ты людей путаешь, люди после твоих лекций теряют веру в себя и уходят работать в пятерочку

    • @ru5541
      @ru5541 3 ปีที่แล้ว +1

      А чем путает то?

    • @luden6794
      @luden6794 2 ปีที่แล้ว

      Я после его лекции ушёл работать в гугл

  • @КириллЧе-я5ы
    @КириллЧе-я5ы 8 หลายเดือนก่อน

    Немножко не согласен, что сущности следует создавать из их поведения… поведение важно, но всё-таки важней сама сущность с ее реализацией… создавать класс с названием действия несколько имхо некорректно

  • @luden6794
    @luden6794 2 ปีที่แล้ว +1

    Спасибо за лекцию, Егор Погром

  • @ilyachudakov7944
    @ilyachudakov7944 2 ปีที่แล้ว +1

    Мне понравился кейс про кишки с докстрингами - очень полезно!

  • @emilseyfullayev1638
    @emilseyfullayev1638 2 ปีที่แล้ว

    Лекции супер. Почему предыдущий урок стал прватным?

  • @СергейЗинченко-т2к
    @СергейЗинченко-т2к 2 ปีที่แล้ว

    Я ещё здесь (:
    А чем (1:24:00 ) сложно хэширование сразу обоих типов параметров? Создавать словарь с ключами-парами типа
    (a, tuple(b.items( ) ), а значениями f(*a,**b)

    • @shaman1984inSPb
      @shaman1984inSPb 2 ปีที่แล้ว

      Во время разных вызовов kwargs могут идти в разном порядке и окажутся разными ключами в кэше.

  • @Fantarose51
    @Fantarose51 3 ปีที่แล้ว

    На 1:20:24 Функция с кешем ведь неправильно считает числа Фибоначчи: 5 число = 5, а 6 = 8.
    А у вас 5 = 8, а 6 =13.

    • @mikhails8182
      @mikhails8182 2 ปีที่แล้ว

      Индексация в списках идет с 0, поэтому в списке [1, 1, 2, 3, 5, 8] число 5 идет на 5 месте, но имеет индекс 4, то же самое мы видим в словаре fib.cashe.
      Интересно, что сначала в словаре идет элемент с индексом 1, а только за ним элемент с индексом 0. Это связано с тем, что в функции при рекурсивном вызове сначала вычисляется (n - 1)-е число, а только затем (n - 2)-е. Можно этого избежать если записать fib.cashe[n] = fib(n-2) + fib(n-1)

  • @rostislavmalyshev1775
    @rostislavmalyshev1775 3 ปีที่แล้ว +2

    Хорошее объяснение. Но слушать на 1.75...

  • @McGewen
    @McGewen 3 ปีที่แล้ว

    сам себе под носм бубнит, наверное получает почасовку