• Алгоритм взаимных лайков?

    AshBlade
    @AshBlade
    Просто хочу быть счастливым
    1. Один сервис поллит события из сервера телеги.
    2. Получил событие - отправляешь его в брокер сообщений.
    3. Сервер обработчик подписывается на брокер сообщений.
    4. Сервер обработчик обрабатывает полученное сообщение.

    Масштабируешь сервера воркеры, поллинг только один сервис может делать. БД шардируешь.
    Ответ
    Развернутный ответ
    Ответ написан
    Комментировать
  • Как работают генераторы в Пайтон?

    @wintreist
    1. Вариант ответа.
    Строка приравнивается только в момент готовности (01234567), но в "".join() происходит её итеративное создание.
    str.join(iterable)
        Return a string which is the concatenation of the strings in iterable. A TypeError will be raised if there are any non-string values in iterable, including bytes objects. The separator between elements is the string providing this method.

    Join итерируем, поэтому сначала произойдет создание строки справа от приравнивания, и потом ссылка на строку запишется в переменную
    Ответ написан
    Комментировать
  • Как работают генераторы в Пайтон?

    Vindicar
    @Vindicar
    RTFM!
    join() вызывает под капотом list() на переданном генераторе, а list() опрашивает весь генератор.
    Так что сначала генерится список вида ['0', '1', '2', '3', '4', '5', '6', '7'], что позволяет сразу рассчитать объём памяти, нужный для итоговой строки. Потом по этому списку уже формируется итоговая строка.
    Ответ написан
    1 комментарий
  • Когда надо использовать инстанс методы и когда класс методы?

    @Jack444
    Через класоввые атрибуты и методы можно задать общие данные для всех машин которые неразумно сравнивать по отдельности, если делать возможным то нечем не будет отличатся от функционального програмирования, только потеряем в вызове метода в 5ятикратном размере. Через инстанцы можно сделать разные машины к примеру ламба и жигули и сравнивать их через операторы и условные выражения, вызов инстанцс методов в 2.5раза быстрее отрабатывает чем класс методы.
    Вот пример можешь порешать, сделай класс генератор на вход принимает дистанцию, который считает время разгона авто и с каждым шагом отдаём время контрольной точки например километр. Сделай другой класс или функцию которая имитирует драгрейсинг и дай туда два инстанца разных авто с разными характеристиками и вычисли кто быстрее придёт к финишу и какое время будет у гонщиков.
    Вот типо таких задач проще решаются через инстанцы.
    Ответ написан
    Комментировать