📅  最后修改于: 2023-12-03 15:37:13.259000             🧑  作者: Mango
在 Discord 上,我们可以建立多个频道,这些频道里面可以让用户与机器人进行互动。机器人收到用户的消息后,就需要给用户发送回复消息,以便与用户继续沟通。
使用 discord.py 可以很方便地实现 Discord 机器人的开发。以下是简单的回复消息示例代码:
import discord
from discord.ext import commands
bot = commands.Bot(command_prefix='!')
@bot.command()
async def hello(ctx):
await ctx.send("Hello World!")
以上代码表示,在 Discord 中使用 !hello 命令时,机器人会回复一条消息 "Hello World!"。
我们可以看到,在使用 discord.py 构建机器人时,回复消息的函数是 ctx.send()
,它的作用是向当前的频道中发送消息。
同样,我们也可以 @ 某一个人来回复他的消息。示例代码如下:
import discord
from discord.ext import commands
bot = commands.Bot(command_prefix='!')
@bot.command()
async def reply(ctx, user: discord.Member):
await ctx.send(f"@{user.mention} Hello!")
以上代码表示,在 Discord 中使用 !reply @user 命令时,机器人会回复一条消息 "@user Hello!"。
需要注意的是,我们在定义函数参数时,使用了 discord.Member
类型。这种类型的参数可以自动转换为被 @ 的用户,并且我们可以使用 user.mention
来获取到被 @ 用户的用户名。
markdown代码片段:
使用 discord.py 构建 Discord 机器人非常便捷。回复消息的函数为 `ctx.send()`,可以向当前频道发送消息。我们也可以 @ 某个用户来回复他的消息,参数类型为 `discord.Member`,获取 @ 的用户名可以使用 `user.mention`。