Discord.py 如何使我的函数循环?

Discord.py How do I make my function loop?

如何让循环 运行 每 5 秒更新一次队列列表?

@tasks.loop(seconds=5.0)
async def queue_check():
    channel = client.get_channel(2342354325223424224)
    queue = []
    for members in channel.members:
        queue.append(members.display_name)
        queue_check.start()
        print(queue)```

好吧,你需要启动它,但不是在循环本身内部

@tasks.loop(seconds=5.0)
async def queue_check():
    channel = client.get_channel(2342354325223424224)
    queue = []
    for members in channel.members:
        queue.append(members.display_name)
        print(queue)


queue_check.start()

您可以在 on_ready 事件、全局范围或命令中启动它,也可以使用 queue_check.stop

停止它

在 cog 的上下文中,在 __init__ 块中启动循环,如果它在您的主文件中,您可以在 bot.run

之前的任何位置启动它

无论如何,方法是queue_chech.start()