Ответы пользователя по тегу Боты
  • Как сделать таймер для запрета команды?

    @fruktikuza Автор вопроса
    я нашёл решение сам.
    Сделать можно так
    1. после срабатывания команды надо текущее время + 1 час положить в конфиг( именно в конфиг, потому что, иначе нельзя задать начальное значение времени, когда только запустили программу и при сравнении будет ошибка)
    2. при использовании сравнивать время из конфига с текущем временем( но стоит учесть, что файл из конфига будет string, а для сравнении времён надо использовать файл типа datetime)
    вот пример кода
    import datetime
    time_now = datetime.datetime.now() #получения время сейчас
    f = open('your_file.py', 'r') #пример получения значения из конфига и преобразованния в тип datetime
    time_hour = f.read()
    time_hour_type_new = datetime.datetime.strptime(time_hour, '%Y-%m-%d %H:%M:%S.%f') #тут указан вид datetime который нам нужен
    f.close()
    #сравнение времён будет таким же как и другое любое сравнение т.е
    if time_hour_type_new > time_now:
        print('Доступ к команде заблокирован')
    else:
        print('Вывод команды')
        f = open('your_file.py', 'w')#блокировка команды
        f.write(str(time_now + datetime.timedelta()))#в значении timedelta указываем на сколько вы хотите заблокировать команду, для часа это будет так timedelta(hours=+1). Для других единиц измерения времени информацию можно посмотреть в конфиге timedata
        f.close()
    Ответ написан
    Комментировать