如何让机器人在一条消息中回复?
How to make bot reply in a single message?
我想让我的机器人在一条消息中做出响应,但由于 for 循环,它在 10 条不同的消息中回复了 10 次。我的代码是:
@bot.command(name='translate', help='- Translates text to a random language!')
async def translating(ctx, thing):
translator = Translator()
for i in range(0, 10):
translation = translator.translate(thing, dest=str(random.choice(list_language_unicodes)))
await ctx.reply(translation.text)
如果有人感兴趣,该代码会获取一个字符串并将其翻译成 10 种随机不同的语言。我的问题只是机器人没有回复单个消息。我是初学者,所以我可能不会了解太多,但仍然。
解决方案:我连接了字符串并在循环结束时重置,因为翻译一直在堆叠:
for i in range(0, 10):
translation = translator.translate(thing, dest=str(random.choice(list_language_unicodes)))
finalny_tekst = finalny_tekst + translation.text + "\n"
await ctx.reply(finalny_tekst)
finalny_tekst = ""
感谢您的帮助!
我想让我的机器人在一条消息中做出响应,但由于 for 循环,它在 10 条不同的消息中回复了 10 次。我的代码是:
@bot.command(name='translate', help='- Translates text to a random language!')
async def translating(ctx, thing):
translator = Translator()
for i in range(0, 10):
translation = translator.translate(thing, dest=str(random.choice(list_language_unicodes)))
await ctx.reply(translation.text)
如果有人感兴趣,该代码会获取一个字符串并将其翻译成 10 种随机不同的语言。我的问题只是机器人没有回复单个消息。我是初学者,所以我可能不会了解太多,但仍然。
解决方案:我连接了字符串并在循环结束时重置,因为翻译一直在堆叠:
for i in range(0, 10):
translation = translator.translate(thing, dest=str(random.choice(list_language_unicodes)))
finalny_tekst = finalny_tekst + translation.text + "\n"
await ctx.reply(finalny_tekst)
finalny_tekst = ""
感谢您的帮助!