簡體   English   中英

有人可以告訴我我做錯了什么嗎?

[英]Can someone tell me what am I doing wrong?

我正在嘗試使用 python 發出警報 discord 機器人。 沒有發生錯誤,但也沒有來自機器人的 output 經過嘗試,除了 function

請注意:鬧鍾,不是定時器

@client.command(aliases = ["alarm"])
async def alarm_at(ctx, time):
    alarm = False
    if alarm == False:
        alarm = True
        now = datetime.now()
        mtimeA = time
        mtimeB = mtimeA.split(":")
        hr = int(mtimeB[0])
        min = int(mtimeB[1])
        secsleft = int((timedelta(hours=24) - (now - now.replace(hour=hr, minute=min, second=0, microsecond=0))).total_seconds() % (24 * 3600))
        print(secsleft)
        await ctx.send(f"OK\Alarm go off at {time}")

        def check(message):
            return message.author == ctx.author and message.content.lower() == "cancel alarm"
        try:
            await client.wait_for("message", check=check, timeout=time)
            await ctx.send("alarm cancelled")
        except:
            if secsleft == 0:
                await ctx.send(f"{ctx.guild.default_role} alarm finished")
    elif alarm == True:
        await ctx.send("Please cancel the current alarm to run a new alarm")

如果在嘗試中發生錯誤...除了,您將看不到任何東西。 試試這個:

        try:
            await client.wait_for("message", check=check, timeout=time)
            await ctx.send("alarm cancelled")
        except Exception as e:
            print(f"Error: {e}")
            if secsleft == 0:
                await ctx.send(f"{ctx.guild.default_role} alarm finished")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM