文字列を引数として受け入れるにはどうすればよいですか?(discord.pyの書き換え)

Dec 17 2020

文字列を引数として受け入れるdiscord.pyコマンドを作成しようとしています。Discordメッセージから文字列を引数として受け入れるにはどうすればよいですか(ブール値と整数の実行方法を言うことができれば、それは役に立ちます)?頑張ってダックフーを試してみましたが無駄でした。

輸入

os
discord
json
requests
python-dotenv
pymediawiki

サンプルコード

#Existing bot

@bot.command()
async def combinestring(ctx):
#argument should be called arg

#process string
   

(必要に応じてさらに追加してもかまいません。)

回答

1 ŁukaszKwieciński Dec 17 2020 at 16:28

これは、コマンドの概要を読んだときに文字通り最初に表示されるものです。ここにリンクがあります

また、ここに例があります

@bot.command()
async def foo(ctx, arg):
    await ctx.send(arg)

# To invoke
# !foo hello
# >>> hello
JoaquimEsteves Dec 17 2020 at 15:41

不和ボットからのメッセージの取得に関する他の質問を見たことがありますか?

  • https://stackoverflow.com/a/61851683/6595024
  • https://stackoverflow.com/a/49127887/6595024

編集:質問への更新を与えられた回答を更新しました

iamthetrueyes Dec 20 2020 at 17:49

その非常に単純なスペースなしで引数を取りたい場合は、

@bot.command()
async def combinestring(ctx, arg: str):
    #your code

スペースを使って引数を取りたい場合は、

@bot.command()
async def combinestring(ctx, *, arg):
    #your code

完了。