Python Discord机器人跳过代码或停止工作

问题描述

我编写的这段代码的第一部分工作正常,当我对机器人进行ping操作时,它会对一个随机的人执行ping操作,但是对多人执行ping操作的第二部分会断裂并不断卡住。它在PyCharm consol上没有显示任何错误,但是它没有发送任何消息,而且由于它通常无法正常工作,我经常不得不重新启动该机器人。

@client.event
    async def on_message(message):
        channel = message.channel
        if message.author == client.user:
            return
        if client.user.mentioned_in(message):
            output = ""
            boolean = True
            while boolean:
                num = len(message.content) - 1
                try:
                    unused = int(message.content[num])
                except:
                    boolean = False
                if boolean:
                    output = message.content[num] + output
            if output == "":
                randomMember = random.choice(channel.guild.members)
                embed = discord.Embed(title="@random",description=message.author.mention + " randomly pinged " + randomMember.mention,color=0xf29718)
                await message.channel.send("||" + message.author.mention + randomMember.mention + "||",embed=embed)
                await discord.Message.delete(message,delay=None)
                return
            elif output >= 11 or output >= len(channel.guild.members):
                embed = discord.Embed(title="Error",description="You have pinged too many people!",color=0xec2222)
                await message.channel.send("||" + message.author.mention + "||",embed=embed)
            else:
                randomMembers = []
                for x in range(1,output):
                    randomMember = random.choice(channel.guild.members)
                    while randomMember in randomMembers:
                        randomMember = random.choice(channel.guild.members)
                    randomMembers.append(randomMember)
                output2 = ""
                for y in randomMembers:
                    extra = y
                    output2 = output2 + extra.mention
                embed = discord.Embed(title="@random " + output,description=message.author.mention + " randomly pinged " + output2,color=0xf29718)
                await message.channel.send("||" + message.author.mention + output2 + "||",delay=None)
                return

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)