Bagaimana cara menerima string sebagai argumen? (discord.py rewrite)

Dec 17 2020

Mencoba membuat perintah discord.py yang menerima string sebagai argumen. Bagaimana cara saya menerima string dari pesan Discord (meskipun jika Anda bisa mengatakan bagaimana melakukan boolean dan integer, itu akan membantu) sebagai argumen? Aku mencoba Duck-fu terbaikku tapi tidak berhasil.

Impor

os
discord
json
requests
python-dotenv
pymediawiki

Kode Contoh

#Existing bot

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

#process string
   

(Saya tidak keberatan menambahkan lebih banyak jika perlu.)

Jawaban

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

Ini benar-benar hal pertama yang muncul saat membaca pengantar perintah, inilah tautannya

Juga inilah contohnya

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

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

Pernahkah Anda melihat pertanyaan lain tentang menerima pesan dari bot perselisihan?

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

edit: Jawaban yang diperbarui diberikan pembaruan untuk pertanyaan

iamthetrueyes Dec 20 2020 at 17:49

Cukup Sederhana Jika Anda ingin berargumen tanpa spasi,

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

Jika Anda ingin berargumen dengan spasi,

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

Selesai.