Search
Write a publication
Pull to refresh

Comments 9

В сети куча туториалов по синхронным ботам и почти ничего по асинхронным

попробуйте в гугле site:habr.com асинхронный телеграм бот python, Вас ждет сильное удивление

спасибо за замечание. большинство статей по библиотеке aiogram. я же пишу ботов на pytelegrambotapi и по асинхронному компоненту не нашел ничего, поэтому решил заполнить эту небольшую брешь)

Чем вас не устраивает aiogram? не видел библиотек лучше него

aiogram отличная библиотека, но начинал я с telebot, потому что он в том числе синхронный (а значит порог входа ниже), а когда у тебя с десяток проектов на одной библиотеке, то как-то не хочется пересаживаться на другую.

Имхо, pytelegrambotapi был плох ещё лет восемь назад. Aiogram намного лучше

Намешали всего в кучу.

  1. async def function— обычная функция, которая возвращает корутину.

  2. function() вернёт <coroutine object>, это не Future.

  3. await <coroutine object> не возвращает Future. Оно возвращает сразу результат корутины.

  4. Future возвращает только вызов event_loop.create_task(), и то в виде более комплексного объекта типа Task, который лишь унаследован от Future.

  5. Разработчик почти никогда не работает с Future напрямую.

  6. Новичкам для работы с ботами в это всё вникать не надо

И вообще не понял прикола про сложность чтения и нелинейность выполнения. Код внутри асинхронных функций всё так же выполняется строчка за строчкой...

Ну и многопоточность для cpu bound... Если уж и решили извращаться, то уж лучше через асинхронность. Хоть меньше потеряете на переключении контекста и системных вызовах

Ещё не понятно, зачем вообще в приведённом коде асинхронность. Оно бы ± так же работало и без неё

Sign up to leave a comment.

Articles