Как мне принять строку в качестве аргумента? (переписать 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
Вы смотрели другие вопросы, касающиеся получения сообщений от бота Discord?
- 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
Сделанный.