我收到以下命令:
@client.command()
async def send(ctx, channel, *, content):
channel = client.get_channel(id)
await channel.send(content)
设置channel=None
不会更改任何内容,并且会出现错误:
'NoneType' object has no attribute 'send'
async def send(ctx, channel=None, *, content):
(不做任何更改-错误保持不变)
示例:我想向ID选择的频道发送一条消息。
图片是Command的外观截图。
答案 0 :(得分:0)
发生这种情况是因为channel
是None
。
例如:如果您像这样打印频道类型
@client.command()
async def send(ctx, channel, *, content):
channel = client.get_channel(channel)
print(type(channel))
# await channel.send(content)
您的输出将为<class 'NoneType'>
。要解决此问题,您可以像这样将int
传递到您的频道输出:
@client.command()
async def send(ctx, channel, *, content):
channel = client.get_channel(int(channel))
await channel.send(content)