嗨,我正在为服务器创建一个非常有用的命令来实现自动化,我希望一旦经过一定的时间(我使用asyncio
),机器人会发送一条消息,自动计算反应次数。
为了进行测试,我尝试了这段代码(我想使用自定义表情符号来做到这一点)
@client.command()
async def pns(ctx,* ,proposta):
await ctx.send(proposta)
await asyncio.sleep(10)
emojis = emojis = [get_emoji(ctx.guild, "Favorevole"), get_emoji(ctx.guild, "Astenuto"), get_emoji(ctx.guild, "Contrario")]
count = emojis.count
await ctx.send(count)
当他运行最后一个脚本时,他向我展示了这一点:
<built-in method count of list object at 0x04D4D3C8>
编辑:
以前我被放置过(然后我不知道为什么删除了)这个字符串,但是它不执行for
,所以没有错误:
@client.command()
@commands.has_permissions(administrator=True)
async def pns(ctx, *, proposta):
emojis = [get_emoji(ctx.guild, name) for name in ["Favorevole", "Astenuto", "Contrario"]]
msg = await ctx.send(proposta)
await asyncio.sleep(10)
print('temposcaduto')
for reaction in msg.reactions:
if reaction.emoji in emojis:
await ctx.send(f'{reaction.emoji} → {reaction.count}')
我该如何解决?