试图获取公会中的所有成员(discord.py 重写)
Posted
技术标签:
【中文标题】试图获取公会中的所有成员(discord.py 重写)【英文标题】:Trying to fetch all members in a guild(discord.py rewrite) 【发布时间】:2021-08-18 09:09:51 【问题描述】:这是我的代码:
@bot.command()
async def list(ctx):
guild = ctx.guild
members = '\n - '.join([member.name for member in guild.fetch_members])
await ctx.send(f'Guild Members:\n - members')
我也尝试过 guild.members 但不起作用,这是错误
The Command raised an exception: TypeError: 'method' object is not iterable. Please, use a valid command.
【问题讨论】:
【参考方案1】:list
是python中的关键字,尽量不要用在自定义函数中。
这是您可以用来获取具有序列号的成员的代码:
@bot.command()
async def memberlist(ctx):
members = ''
for index, member in enumerate(ctx.guild.members, start=1):
members += f'index) member\n'
await ctx.send(members)
【讨论】:
嗨!我试过了,但它只列出了机器人,这发生在我身上吗?无论如何要解决这个问题? 它对我有用,你能告诉我你现在遇到了什么错误吗? @PandaDev 确保您已在您的代码中和通过 Discord 的 Web 界面启用了 members intent。 @CrazyChucky 如何通过我的代码启用它 点击链接,查看 A Primer to Gateway Intents 中的代码示例。以上是关于试图获取公会中的所有成员(discord.py 重写)的主要内容,如果未能解决你的问题,请参考以下文章