当前位置: 首页 > 知识库问答 >
问题:

on_member_join无法打印消息

汤承允
2023-03-14

我正在使用Python 3.8执行一个Discord bot,我在_member_join()上的事件有问题。

@bot.event
async def on_member_join(member):

    embed = discord.Embed(
    title=f"that doesn't function")
    channel = discord.utils.get(member.guild.channels, name='WELCOME_CHANNEL_NAME')


    await member.send('Hello')
    await channel.send(embed=embed)

member.send发送带有hello的专用消息,但通道。send发送此错误等待通道。send(embedd=embed)attributeerror:'nonetype'对象没有属性'send'

我真的不知道该怎么办,

谢谢你的帮助!


共有1个答案

范成周
2023-03-14

因为您可能没有名为welcome_channel_name的通道。这就是通道返回none的原因。您需要在channel=discord.utils.get(member.guild.channels,name='welcome_channel_name')中键入真正的欢迎通道名称,而不是welcome_channel_name

 类似资料:
  • 我尝试在A4纸上以横向打印JavaFX WebView (JavaFX 8_25)中的HTML页面,但它以纵向打印出来,字体很小 系统输出显示纵向方向 纸张=纸:A4 (210 x 297mm) 尺寸=594.90087890625x841.3598022460938 MM 东方=纵向左边缘=54.0 右边缘=54.0 顶部边缘=54.0 底部边缘=54.0 我发现以横向模式打印HTML页面的唯一

  • 问题内容: 我正在验证器中发出很多警告,并且我想抑制stdout中的所有内容,除非提供给的消息。 即,现在我看到了: 我想看看这个: 编辑2: 覆盖工作: 问题答案: 具有您自己的自定义功能的Monkeypatch 。

  • 问题内容: 我是在数据库中使用触发器的新手,我创建了一些对我来说效果很好的触发器,除了当我尝试创建一个在删除一行后将显示一条消息的触发器时。 我尝试使用此代码: 当我创建此触发器时,它不会给出错误消息,但是当我删除一行时,它不会显示我打印的消息。 问题答案: 这是因为触发器的运行方式,基本上它不在查询执行窗口中。一种方法是登录到事件查看器。 执行此操作的另一种方法是写入文件,这里当然存在权限问题,

  • 问题内容: 我想为我的终端应用程序制作一个进度条,该进度条的工作原理如下: 这样可以直观地表明在该过程完成之前还剩下多少时间。 我知道我可以通过将它们添加到字符串中,然后简单地使用printf,来执行诸如打印越来越多的X的操作,但这看起来像: 或类似的东西(显然您可以按一定的间距来玩。)但是,这在视觉上并不美观。有没有一种方法可以用新文本更新终端中的打印文本而无需重新打印?这一切都在linux,c

  • 问题内容: 文件创建成功,但是我无法让PrintWriter将任何内容打印到文本文件。码: 问题答案: 您必须刷新和/或关闭文件才能将数据写入磁盘。 添加您的代码:

  • 问题内容: 我有一个已编码为UTF-8的俄语字符串 当我在Eclipse控制台中打印字符串时,我得到有人可以建议如何将俄语字符串打印到控制台,或者我在这里做错了什么? 我尝试过使用它将其转换为字节,然后仍然是同样的问题:-( 问题答案: 试试这个: 或这个: 俄语的主要问题是正确设置UTF-8编码。