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

    @KODYAcoder
    Проблема заключается в том, что вы открываете и записываете в файл внутри цикла. Вместо этого вам нужно сначала изменить данные во всем словаре, а затем записать его в файл.

    Вот пример, как это можно сделать:

    def readInfo():
        with open('Account.json','r') as f:
            data = json.load(f)
    
        return data['accs']
    
    BigData = readInfo()
    for info in BigData:
        print(info['cookie'])
        info['cookie'] = False
    
    with open('Account.json','w') as f:
        json.dump({"accs": BigData}, f, ensure_ascii=False, indent=4)
    
    for info in BigData:
        print(info['cookie'])
    В этом примере мы сначала читаем данные из файла в переменную BigData, затем изменяем параметр cookie для каждого элемента в списке BigData. Затем мы записываем измененный BigData обратно в файл.
    Ответ написан
    Комментировать
  • Почему не создается таблица Up_Index_Panel?

    @KODYAcoder
    Если вы запускаете db.create_all() из консоли, то возможно вы не импортировали модель Up_Index_Panel из файла вашего приложения.

    Попробуйте следующее:

    Запустите ваше приложение app.run() в консоли.
    Откройте другую консоль, импортируйте модель Up_Index_Panel и вызовите db.create_all() из этой консоли.
    Если это не решает проблему, проверьте, что у вас есть разрешения на запись в каталог, где находится файл базы данных verhpanelindex.db.
    Ответ написан
  • Как сделать комманду для очистки чата Disnake?

    @KODYAcoder
    Ошибка, которую вы получаете, связана с тем, что вы пытаетесь сравнить строку с целым числом, что не поддерживается.

    Для решения этой проблемы вам нужно преобразовать аргумент "amount" в целое число, прежде чем передавать его в функцию "purge". Вы можете сделать это, используя функцию "int".

    Измените ваш код на следующий образ:

    @bot.slash_command()
    async def clear(ctx, amount=100):
        await ctx.channel.purge(limit=int(amount))

    Эта команда очистит чат на указанное количество сообщений (по умолчанию - 100). Вы можете вызвать эту команду, написав "/clear" в чате Discord и указав количество сообщений, которые вы хотите удалить, например "/clear 50".
    Ответ написан
    1 комментарий