所以我正在制作一个等待用户输入的机器人,然后更改嵌入描述中的数字。我当前的代码在 discord 中给出了错误:错误:命令引发异常:类型错误:只能将 str(不是“int”)连接到 strimport discordfrom discord.ext import commands, tasksimport osimport Bimport wargamingwot = wargaming.WoT('demo', region='na', language='en')key=os.getenv('key')#just some things you might want inside the bot here.wkey=os.getenv('wkey')client = discord.Client()#declaring what the client is.client = commands.Bot(command_prefix = ';;')client.remove_command('help')@client.eventasync def on_ready(): await client.change_presence(activity=discord.Activity(type=discord.ActivityType.watching, name="Skirmish Tactics")) print("Bot is ready!")def check(ctx): return lambda m: m.author == ctx.author and m.channel == ctx.channelasync def get_input_of_type(func, ctx): while True: try: msg = await client.wait_for('message', check=check(ctx)) return func(msg.content) except ValueError: continue@client.command()async def skirmishstandings(ctx): await ctx.send('Enter skirmish tier(6,8,10):') tier = await get_input_of_type(int, ctx) position = discord.Embed(title="Irish Rouge Ecelon's stronghold position", description="IRE's stronghold positon for tier" + int(tier) + "skirmishes") await ctx.send(embed=position)@client.eventasync def on_command_error(ctx, error): await ctx.send(f'Error: {error}')我查看了堆栈溢出并更改了我的代码很多但不幸的是没有成功。我想我会问我自己的问题。任何帮助表示赞赏!谢谢!
1 回答
慕容森
TA贡献1853条经验 获得超18个赞
试试这个。
description=f"IRE's stronghold positon for tier {tier} skirmishes"
您正在尝试连接两个不同类型的对象。因此错误。因此int(tier)
,您不应该这样做,而应该这样做str(tier)
以获得所需的输出。
添加回答
举报
0/150
提交
取消