我对python真的很陌生,并且一般来说在编码方面都相对缺乏经验,所以我自己不能真正解决这个问题。
该机器人在我尝试运行命令的前几次没有复制输出,但是在我添加了更多命令之后,它开始乘以输出。我还剪切并粘贴了一堆代码行,但是在文本编辑器(Atom)中没有任何错误给我带来错误。
此外,如何轻松重启我的机器人?我正在使用Atom,但看不到在其上进行此操作的明显方法...
这是我使用的代码(最后剩下的就是令牌):
import discord
from discord.ext import commands
client = commands.Bot(command_prefix = '.')
@client.event
async def on_ready():
print("Hello world")
@client.event
async def on_member_join(member):
print(f'{member} has joined a server')
@client.event
async def on_member_remove(member):
print(f'{member} has left a server')
@client.command()
async def moon(ctx):
await ctx.send('dancer')
@client.command()
async def ping(ctx):
await ctx.send(f'{round(client.latency * 1000)}ms')
@client.command()
async def test(ctx):
await ctx.send('test')
我非常感谢大家的投入,谢谢!
答案 0 :(得分:1)
该机器人将输出结果相乘很可能是一个错误,因为我看不到您做错了什么。我认为您的IDE可能有问题-我不建议Atom运行您应该使用VScode或PyCharm的Python脚本-或您的Python解释器有问题。
为了轻松关闭机器人,我在机器人中使用了以下命令:
import sys
import discord
from discord.ext import commands
client = commands.Bot(command_prefix = ".")
@client.command()
async def quit(ctx):
sys.exit()
client.run("")
之后,只需再次运行您的程序即可。但是最简单的方法是手动终止程序。
答案 1 :(得分:0)
我想到的重新启动bot的最快方法是简单地手动停止python代码。我在atom中使用atom-python-run包来运行我的python代码。我只需按F5键开始代码,它就会在原子文本编辑器之外打开控制台。从那里停止我的代码就像关闭该窗口一样简单。