如何获取所有非bot成员的列表,重写Discord.py?
How to get a list of all non-bot members, rewriting Discord.py?
我正在制作一个根据行会成员数量来衡量数字的机器人。但是,我不想包括机器人。
我的代码:
members = []
for member in client.get_all_members():
if str(member.type) != 'bot':
members.append(member)
print(members)
number = 10 * len(members)
discord api 库中已有一个功能。
Returns 机器人可以看到的所有用户的列表。
简单使用
len(client.users)
请注意,成员可能是机器人,但用户永远不是机器人。
我发现了问题,我使用了错误的格式,所有成员对象都有一个名为 bot 的布尔值,我只需要查询它是否为 false
members = []
for member in client.get_all_members():
if member.bot == False:
members.append(member)
print(members)
number = 10 * len(members)
您可以使用列表推导来制作所有用户的列表,其中 member.bot
是 False
。
members = [member for member in client.get_all_members() if not member.bot]
print(len(members))
这需要 client.get_all_members()
生成器并在一行中创建一个新列表,其中所有用户都不是机器人。
然后,我们只打印该列表的长度,您可以根据需要使用它。
我正在制作一个根据行会成员数量来衡量数字的机器人。但是,我不想包括机器人。
我的代码:
members = []
for member in client.get_all_members():
if str(member.type) != 'bot':
members.append(member)
print(members)
number = 10 * len(members)
discord api 库中已有一个功能。
Returns 机器人可以看到的所有用户的列表。
简单使用
len(client.users)
请注意,成员可能是机器人,但用户永远不是机器人。
我发现了问题,我使用了错误的格式,所有成员对象都有一个名为 bot 的布尔值,我只需要查询它是否为 false
members = []
for member in client.get_all_members():
if member.bot == False:
members.append(member)
print(members)
number = 10 * len(members)
您可以使用列表推导来制作所有用户的列表,其中 member.bot
是 False
。
members = [member for member in client.get_all_members() if not member.bot]
print(len(members))
这需要 client.get_all_members()
生成器并在一行中创建一个新列表,其中所有用户都不是机器人。
然后,我们只打印该列表的长度,您可以根据需要使用它。