dist ( = ad*RADIUS)
, будет окружностью. x = x0 + d/2 * cos(t) * |cos(t)|,
y = y0 + d/2 * sin(t) * |sin(t)|,
begin_f = 1234
end_f = 7890
bytes_to_read = end_f - begin_f
with open(file, 'rb') as ifile, open(output_file, 'wb') as ofile:
ifile.seek(begin_f)
data = ifile.read(bytes_to_read)
ofile.write(data)
InlineKeyboardMarkup
с callback_data
в сообщении бота вместо ReplyKeyboardMarkup
и редактировании сообщения edit_message_text
при нажатии на кнопку пользователем. .ts
. Их можно склеивать без потери качества конечного файла. А финальный результат завернуть в mp4
. Если у вас уже есть файлы *.mp4
с правильным кодеком, который надо склеить, то преобразуйте их в ts
:ffmpeg -i INPUT.mp4 -codec copy -bsf:v h264_mp4toannexb OUTPUT.ts
asyncio.run(...)
блокирующая, это что значит что до конца её выполнения следующий код не будет вызван. Она специально добавлена в стандартную библиотеку, чтобы упростить запуск корутин, и по-хорошему должна вызываться один раз.full
с двумя разными токенами, то воспользуйтесь тем же gather
, что у вас выше в коде. sign_in
с кодом, который вы получите по SMS или телефонному звонку. Если к номеру телефона не привязан никакой аккаунт Telegram, то в ответе будет информация о необходимости регистрации. Вот тогда нужно будет вызывать метод sign_up
.for i in range(10):
...
self.b_course[i].clicked.connect(lambda: self.enter_course(value))
for i in range(10):
...
self.b_course[i].clicked.connect(lambda state, v=value: self.enter_course(v))