Прибавить к отправленному времени определенное кол-во часов (discord)
Пытаюсь написать бота который к отправленному времени прибавит заранее написанное время. Например: Test 18:00 и после этого бот прибавляет 3 часа и отправляет это в чат т.е Test 18:00 - 21:00.
@bot.command()
async def Test (ctx, amount=1):
await ctx.channel.purge(limit=amount)
author = ctx.message.author
await ctx.send(f'Test {} - {p}')
p = datetime.timezone(datetime.timedelta(hours=6))
def get_time(p):
return datetime.datetime.now(p).time().replace(microsecond=0)
Ответы (1 шт):
Автор решения: RAINGM
→ Ссылка
Если я вас правильно понял, то идёт текущее время, потом новое и всё в одной строке
@bot.command()
async def Test (ctx, time_: str):
current_datetime = None
try:
current_datetime = datetime.strptime(time_, '%H:%M')
except ValueError:
return await ctx.send(f"{ctx.author.mention} Вы неверно указали время. Пример: 15:00")
new_datetime = current_datetime + datetime.timedelta(hours=6)
await ctx.send(f'Test {current_datetime} - {new_datetime}')