Discord.py dmall 命令

问题描述 投票:0回答:1

我正在制作一个 dmall 命令,对于 ctx.members,它显示

unexpected intended block

我该如何解决这个问题

@bot.command()
async def dmall(ctx, *, message):

获取服务器内所有成员列表

members =ctx.guild.members

循环每个成员并发送 DM

for member in members:

try:
    await member.send(message)
    print(f"Sent a DM to {member.name}
    #{member.discriminator}")

except:
    print(f"Failed to send a DM to
    {member.name}#{member.discriminator}")
    await ctx. send("DMs sent to all members!")
python discord discord.py command bots
1个回答
0
投票

打印语句不能像这样分成两行。

print(f"Failed to send a DM to {member.name}#{member.discriminator}")

或者,您也可以使用

\
(反斜杠`来告诉 python 从下一行继续读取。

print(f"Failed to send a DM to \
{member.name}#{member.discriminator}")

因为原始问题中的代码格式不正确,如果这不是问题所在。检查每行的缩进。定义函数后,应该缩进。

def myfunction(): 
    pass

在像

try, except
这样的语句之后(或者基本上是在冒号
:
之后),另一个缩进。

def myfunction():
    try:
        print(int("abc"))
    except ValueError:
        print(123)
© www.soinside.com 2019 - 2024. All rights reserved.