Discord.py - 尝试获取频道、文本频道和语音频道的数量
Discord.py - Trying to get number of channels, text channels & voice channels
我正在尝试获取服务器信息命令的频道数、文本频道和语音频道,我浏览了互联网但没有找到任何东西
我不会完整地显示服务器信息命令,只是在此处尝试获取频道、文本频道和语音频道的数量:
@client.command()
async def sinfo(ctx):
guild=ctx.message.guild
embed=discord.Embed(colour=discord.Colour.orange())
embed.add_field(name="Server Channels: ", value=guild.channels, inline=False)
embed.add_field(name="Server Text Channels: ", value=guild.text_channels, inline=False)
embed.add_field(name="Server Voice Channels: ", value=guild.voice_channels, inline=False)
await ctx.send(embed=embed)
当我说 "channels" 时,我指的是文本频道和语音频道
所有 3 个 return 一个 list 所以你只需要对它们使用 len
来获得号码。
请注意,guild.channels
将 return 文本和语音频道 包括 类别。
所以你的解决方案看起来像
total_text_channels = len(guild.text_channels)
total_voice_channels = len(guild.voice_channels)
total_channels = total_text_channels + total_voice_channels
embed.add_field(name="Server Channels: ", value=total_channels )
embed.add_field(name="Server Text Channels: ", value=total_text_channels )
embed.add_field(name="Server Voice Channels: ", value=total_voice_channels )
如果您希望我删除它以使其更短,请添加 inline=False
。
下次还要查找 official API reference 以保护自己免受网络攻击。
我正在尝试获取服务器信息命令的频道数、文本频道和语音频道,我浏览了互联网但没有找到任何东西
我不会完整地显示服务器信息命令,只是在此处尝试获取频道、文本频道和语音频道的数量:
@client.command()
async def sinfo(ctx):
guild=ctx.message.guild
embed=discord.Embed(colour=discord.Colour.orange())
embed.add_field(name="Server Channels: ", value=guild.channels, inline=False)
embed.add_field(name="Server Text Channels: ", value=guild.text_channels, inline=False)
embed.add_field(name="Server Voice Channels: ", value=guild.voice_channels, inline=False)
await ctx.send(embed=embed)
当我说 "channels" 时,我指的是文本频道和语音频道
所有 3 个 return 一个 list 所以你只需要对它们使用 len
来获得号码。
请注意,guild.channels
将 return 文本和语音频道 包括 类别。
所以你的解决方案看起来像
total_text_channels = len(guild.text_channels)
total_voice_channels = len(guild.voice_channels)
total_channels = total_text_channels + total_voice_channels
embed.add_field(name="Server Channels: ", value=total_channels )
embed.add_field(name="Server Text Channels: ", value=total_text_channels )
embed.add_field(name="Server Voice Channels: ", value=total_voice_channels )
如果您希望我删除它以使其更短,请添加 inline=False
。
下次还要查找 official API reference 以保护自己免受网络攻击。