Discord.py机器人如何通过id提及频道

Discord.py机器人如何通过id提及频道,discord.py,Discord.py,我试图发出一个命令,获取id并逐个id提及通道。这个命令只是测试端。我在文本文件中有频道id。然后我将从文本文件中获取频道id,然后提及频道。但是我试着测试一个命令,但没有成功。如何使用ctx模块完成此工作?我没有频道名称,只是使用频道id 这是我的密码: @Bot.command() async def test(ctx): await ctx.channel.send(ctx.channel(id=817xxxx16575xxx895).mention) 如何解决此问题?如果您试图提及

我试图发出一个命令,获取id并逐个id提及通道。这个命令只是测试端。我在文本文件中有频道id。然后我将从文本文件中获取频道id,然后提及频道。但是我试着测试一个命令,但没有成功。如何使用ctx模块完成此工作?我没有频道名称,只是使用频道id

这是我的密码:

@Bot.command()
async def test(ctx):
  await ctx.channel.send(ctx.channel(id=817xxxx16575xxx895).mention)

如何解决此问题?

如果您试图提及您的上下文频道:

等待ctx.send(ctx.channel.notice)

如果您试图只提及一个频道,您将硬编码其id:

等待ctx.send(Bot.get_频道(id).提及)
虽然有一些关于这一点和代码的注释,但id是arg,而不是kwarg,所以只需传递整数,而不是id=

如果您想提及消息中给出id的频道:

异步def测试(ctx,arg): 等待ctx.send(Bot.get_通道(int(arg))。提及)
虽然我建议使用try…except块,以防它不是有效的频道id

,但您也可以使用原始的提及字符串:
等待ctx.send(Bot.get\u频道(id.title)
不起作用。我将id放在id端,但它给出了以下错误:ctx.channel.send(Bot.get_channel(817xxxx16575xx895)。提及)运行时警告:启用tracemalloc以获取对象分配traceback@Conqueror你的id中不能有Xs,你从哪里得到的?正确的方法是启用开发人员模式,然后使用来自各种事物的“复制id”来获得它。没问题!!你介意把我的回答标为已接受吗?(你不需要这么做,但这表明你的问题已经解决了,帮了我的忙!)我做到了。再次感谢你。