从选择中指定要提及的人数

琼奇

我试图做出一个在语音通道中选择多个人并提及他们的命令。

目前,我做到了,所以有人提到:

@commands.command()
async def hns(self, message):
    await message.channel.send(choice(tuple(member.mention for member in message.author.voice.channel.members if not member.bot)))
    await message.channel.send("You have been chosen to seek.")

我一直在尝试在命令中添加一个参数,例如arg,但是我不确定从那里去哪里。

可能的解决方案:

我不习惯使用message参数,所以不确定,但是也许可以使用ctx更多内容?

有任何想法吗?

迪格

使用修饰符的命令中的第一个参数始终是上下文对象,它们只是ctx按约定调用这意味着您的messagearg实际上是上下文对象。

另一个可能的解决方案是改组成员列表,然后选择x个成员,如下所示:

@commands.command()
async def hns(self, ctx, amount: int):
    members = [m.mention for m in ctx.author.voice.channel.members if not m.bot]
    random.shuffle(members) # shuffles it in place, i.e. doesn't return the list
    selected = members[:amount]
    await ctx.send(f"{', '.join(selected)}, you've been chosen to seek!")

该命令的用法是:
!hns 3
随机选择3个用户。这样可以避免必须使用硬编码的值,尽管您可以根据需要这样做。


参考文献:

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在R中的mapply中指定要迭代的参数

来自分类Dev

如何知道在Node中指定要求的路径

来自分类Dev

使用DataTables,如何在<td>中指定要搜索的元素

来自分类Dev

如何在vQmod中指定要忽略的文件-Opencart 1.5

来自分类Dev

Matlab:在Surf-Plot中指定要着色的值的范围

来自分类Dev

如何使此饼图显示选择了选项1和选项2的人数?

来自分类Dev

试图找到班上的人数

来自分类Dev

Discord.js-Bot不会在日志中指定/提及频道

来自分类Dev

如何指定要从联接结果中选择的列

来自分类Dev

如何在SSRS报告向导中指定要使用的存储过程?

来自分类Dev

黄瓜jvm-在After挂钩中指定要忽略的多个标签

来自分类Dev

更新MySQL表-您无法在From子句中指定要更新的目标表

来自分类Dev

如何在mongoid.yml中指定要拖曳的客户证书?

来自分类Dev

如何在NestJS CLI中指定要添加控制器的模块?

来自分类Dev

在.csproj文件中指定要添加到nuget包的文件

来自分类Dev

如何在Windows 8中指定要备份的文件夹?

来自分类Dev

更新MySQL表-您不能在From子句中指定要更新的目标表

来自分类Dev

您无法在MySQL的FROM子句中指定要更新的目标表

来自分类Dev

如何在mongoid.yml中指定要轻便摩托车的客户证书?

来自分类Dev

如何在Excel中指定要以数字格式显示的字符数

来自分类Dev

php sql-了解您无法在FROM子句中指定要更新的目标表

来自分类Dev

MySQL您无法在FROM子句中指定要更新的目标表X

来自分类Dev

无法在 mocha nodejs 中指定要测试的函数抛出的错误。expect.to.throw (Error) 不工作

来自分类Dev

Python - 从谁的句子中指定要对其执行功能的语料库?

来自分类Dev

React Native:在reducer中指定要修改的数组项(使用React Immutability helpers)

来自分类Dev

如何在 elasticsearch 的 POST 请求正文中指定要索引的 2 个或更多文档?

来自分类Dev

您不能在 FROM 子句中指定要更新的目标表“位置”

来自分类Dev

NPM:如何在命令行中指定要发布的注册表?

来自分类Dev

OpeCV计算房间中的人数

Related 相关文章

  1. 1

    如何在R中的mapply中指定要迭代的参数

  2. 2

    如何知道在Node中指定要求的路径

  3. 3

    使用DataTables,如何在<td>中指定要搜索的元素

  4. 4

    如何在vQmod中指定要忽略的文件-Opencart 1.5

  5. 5

    Matlab:在Surf-Plot中指定要着色的值的范围

  6. 6

    如何使此饼图显示选择了选项1和选项2的人数?

  7. 7

    试图找到班上的人数

  8. 8

    Discord.js-Bot不会在日志中指定/提及频道

  9. 9

    如何指定要从联接结果中选择的列

  10. 10

    如何在SSRS报告向导中指定要使用的存储过程?

  11. 11

    黄瓜jvm-在After挂钩中指定要忽略的多个标签

  12. 12

    更新MySQL表-您无法在From子句中指定要更新的目标表

  13. 13

    如何在mongoid.yml中指定要拖曳的客户证书?

  14. 14

    如何在NestJS CLI中指定要添加控制器的模块?

  15. 15

    在.csproj文件中指定要添加到nuget包的文件

  16. 16

    如何在Windows 8中指定要备份的文件夹?

  17. 17

    更新MySQL表-您不能在From子句中指定要更新的目标表

  18. 18

    您无法在MySQL的FROM子句中指定要更新的目标表

  19. 19

    如何在mongoid.yml中指定要轻便摩托车的客户证书?

  20. 20

    如何在Excel中指定要以数字格式显示的字符数

  21. 21

    php sql-了解您无法在FROM子句中指定要更新的目标表

  22. 22

    MySQL您无法在FROM子句中指定要更新的目标表X

  23. 23

    无法在 mocha nodejs 中指定要测试的函数抛出的错误。expect.to.throw (Error) 不工作

  24. 24

    Python - 从谁的句子中指定要对其执行功能的语料库?

  25. 25

    React Native:在reducer中指定要修改的数组项(使用React Immutability helpers)

  26. 26

    如何在 elasticsearch 的 POST 请求正文中指定要索引的 2 个或更多文档?

  27. 27

    您不能在 FROM 子句中指定要更新的目标表“位置”

  28. 28

    NPM:如何在命令行中指定要发布的注册表?

  29. 29

    OpeCV计算房间中的人数

热门标签

归档