在 discord.py 中加载命令时出错
Getting errors in loading a command in discord.py
所以我正在构建一个机器人。
这是代码:
import discord
from discord.ext import commands
from discord.utils import get
client = discord.Client()
bot = commands.Bot(command_prefix="&")
token = "<token censored for privacy>"
@client.event
async def on_ready():
print(f"{client.user} has connected to Discord.")
@bot.command()
async def repeat(ctx, args):
await ctx.send(args*10)
await ctx.send("You got rolled. Do it again.")
bot.add_command(repeat)
client.run(token)
但是当我 运行 代码时,我得到一个错误:
discord.ext.commands.errors.CommandRegistrationError: The command repeat is already an existing command or alias.
我之前没有调用过bot.add_command
函数。谁能帮忙解决这个问题?
错误截图:
discord.ext.commands.errors.CommandRegistrationError image
代码截图:
bot.py file
当您想向机器人添加命令时,您有两个选择。
- 您可以添加
@bot.command()
装饰器,或者
- 您可以使用
@commands.command()
装饰器和 运行 bot.add_command(repeat)
这两个都会将您的命令添加到机器人。查看 discord.py
documentation for commands 以了解有关添加命令的更多详细信息。
您看到错误的原因是您实际上添加了两次命令。
所以我正在构建一个机器人。
这是代码:
import discord
from discord.ext import commands
from discord.utils import get
client = discord.Client()
bot = commands.Bot(command_prefix="&")
token = "<token censored for privacy>"
@client.event
async def on_ready():
print(f"{client.user} has connected to Discord.")
@bot.command()
async def repeat(ctx, args):
await ctx.send(args*10)
await ctx.send("You got rolled. Do it again.")
bot.add_command(repeat)
client.run(token)
但是当我 运行 代码时,我得到一个错误:
discord.ext.commands.errors.CommandRegistrationError: The command repeat is already an existing command or alias.
我之前没有调用过bot.add_command
函数。谁能帮忙解决这个问题?
错误截图:
discord.ext.commands.errors.CommandRegistrationError image
代码截图:
bot.py file
当您想向机器人添加命令时,您有两个选择。
- 您可以添加
@bot.command()
装饰器,或者 - 您可以使用
@commands.command()
装饰器和 运行bot.add_command(repeat)
这两个都会将您的命令添加到机器人。查看 discord.py
documentation for commands 以了解有关添加命令的更多详细信息。
您看到错误的原因是您实际上添加了两次命令。