1

有没有办法可以返回服务器所有成员的数组?我正在尝试在某人执行“!whowould 做某事”的地方发出“谁会”命令,然后它从服务器中随机选择一个用户并说“用户会做某事”我试过这个。

@bot.command()
async def whowould(ctx, *args):
    print(ctx.guild.members)

我尝试这样做只是为了看看它做了什么,但它收集的信息不仅仅是用户的用户名和标签。

我希望能够将服务器的成员保存为数组,以便我可以使用随机模块。

4

1 回答 1

3

Guild.members已经是一个Member对象列表。您应该使用random.choice选择一个,然后使用Member.display_nameorMember.mention来获取他们的名字或提及他们:

@bot.command()
asyc def ping_random(ctx):
    member = random.choice(ctx.guild.members)
    await ctx.send(f"{member.mention}")
于 2020-07-03T23:47:33.897 回答