Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Discord Bot使用python向一个命令发送多个响应_Python_Bots_Discord_Discord.py_Discord.py Rewrite - Fatal编程技术网

Discord Bot使用python向一个命令发送多个响应

Discord Bot使用python向一个命令发送多个响应,python,bots,discord,discord.py,discord.py-rewrite,Python,Bots,Discord,Discord.py,Discord.py Rewrite,我正在用atom用python为discord编写一个bot,每当我在bot上运行命令(包括帮助)时,它都会向该命令发送多个响应,但并非所有响应都是相同的(例如:s?ping,它将使用不同的ping多次应答)。我认为它发送的数量是随机的,我不确定它到底出了什么问题,我听说循环可以做到这一点,但我只有一个循环,那就是改变状态。这是我的代码(不带令牌): 导入不一致 随机输入 导入操作系统 从itertools导入周期 从discord.ext导入命令、任务 client=commands.Bot(

我正在用atom用python为discord编写一个bot,每当我在bot上运行命令(包括帮助)时,它都会向该命令发送多个响应,但并非所有响应都是相同的(例如:s?ping,它将使用不同的ping多次应答)。我认为它发送的数量是随机的,我不确定它到底出了什么问题,我听说循环可以做到这一点,但我只有一个循环,那就是改变状态。这是我的代码(不带令牌):

导入不一致
随机输入
导入操作系统
从itertools导入周期
从discord.ext导入命令、任务
client=commands.Bot(命令前缀=s?)
状态=循环(['s?//Senkuu by Rubix,'s?help-由Rubix制作#8166,'s?//Alpha v0.11.2,由Python制作(discord.py/atom)'))
@客户端事件
_ready()上的异步定义:
更改\u状态。开始()
打印('机器人已准备就绪')
@tasks.loop(秒=20)
异步def更改_状态():
等待客户。更改状态(活动=不和谐。游戏(下一步(状态)))
@client.command()
异步定义ping(ctx):
等待ctx.send(f'Pong!{round(client.latency*1000)}ms')
@客户端事件
命令上的异步定义错误(ctx,错误):
如果isinstance(错误,commands.MissingRequiredArgument):
等待ctx.send('命令中缺少要求,请重试')
@命令(别名=['8ball'])
异步定义球(ctx,*,问题):
回答=[“这是肯定的。”,
“确实如此。”,
“毫无疑问。”,
“是的,当然。”,
“你可以信赖它。”,
“在我看来,是的。”,
“很可能。”,
“前景良好。”,
“是的。”,
“符号指向是。”,
“回答模糊,再试一次。”,
“以后再问。”,
“最好现在不要告诉你。”,
“现在无法预测。”,
“集中精神再问一次。”,
“别指望了。”,
“我的回答是否定的。”,
“我的消息来源说没有。”,
“前景不太好。”,
“非常可疑。”]
等待ctx.send(f'Question:{Question}\nAnswer;{random.choice(responses)})
@client.command()
@commands.has_角色('主持人[工作人员])
异步def清除(ctx,数量:int):
等待ctx.channel.purge(限制=数量)
@client.command()
@commands.has_角色('主持人[工作人员])
异步定义禁止(ctx,成员:discord.member,*,reason=None):
等待成员。禁止(原因=原因)
等待ctx.send(f'banked{member.notice})
@client.command(pass\u context=True)
@commands.has_权限(kick_members=True)
异步def kick(self,ctx,用户:discord.user,*,原因):
server=ctx.message.server
提及=用户。提及
id=user.id
author=str(ctx.message.author)

x=discord.utils.get(server.channels,name=“criminal records我看不出有任何理由让它像以前那样循环。你的任何齿轮中都有任何pong命令吗?我已经纠正了你的缩进并运行了它,没有遇到同样的问题。我让机器人运行了多次smh(几天前已修复)

你能正确缩进吗?我现在没有齿轮,只有主bot文件,在post中的一个,唯一的ping命令在那里复制并粘贴上面的代码并添加你的令牌看看它是否工作正常,测试时运行良好。这很奇怪,仍然发生在我身上。你在测试什么?我正在使用Visual studio代码,我确实删除了os.listdir('./cogs')中文件名的'``@client.command()异步定义加载(ctx,扩展名):client.load_扩展名(f'cogs.{extension}')@client.command()异步定义卸载(ctx,扩展名):client.load_扩展名(f'cogs.{extension}'):if filename.endswith('.py'):client.load_扩展名(f'cogs.{filename[:-3]}'))“``既然没有齿轮可以加载,我用Atom运行它有关系吗?会有区别吗?