【问题标题】:how to get from parameters more than one word in each paramater (discord.py)如何从参数中获取每个参数中的多个单词(discord.py)
【发布时间】:2020-08-21 22:32:34
【问题描述】:

我的问题很简单,我不知道它是否已经被回答过,因为我找不到答案。所以我正在尝试这个想法,当有人输入一个单词时,机器人会自动回复一个特定的回复,我正在创建一个添加这些东西的命令,但是我遇到了一个问题,即每个参数只获得第一个和第二个输入,我想将它们彼此分开,这是一个小例子:

@client.command()
async def areply(ctx,word, info):

【问题讨论】:

  • 您可以查看 (this)[realpython.com/python-kwargs-and-args/] 了解更多详细信息,但是您可以使用 (ctx, *, words) 在命令调用后接受所有单词,然后您可以将其拆分为空格。如果您只想要第一个单词拆分,您可以使用(ctx, *words) 创建一个元组,删除第一个索引项并加入其余项
  • 我无法理解你的问题,你能解释一下吗?

标签: python parameter-passing discord.py


【解决方案1】:

您可以添加*,它将第二个参数之后的每个单词作为用户输入,例如:

@client.command()
async def areply(ctx, word, *, info):
    await ctx.send(f"The word provided was: `{word}` and the information provided was: `{info}`")

假设用户输入!areply Example This is test info,机器人将输出以下内容:

提供的词是:Example,提供的信息是:This is test info

【讨论】:

    猜你喜欢
    • 2019-09-04
    • 2012-03-08
    • 2021-11-16
    • 2016-07-28
    • 2021-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多