@Azapro_html

Почему не работает цикл for?

Мой код
@bot.command()
async def Pass(ctx):

  with open("pass.json", "r") as file:
    data = json.load(file)
  
  embedVar = discord.Embed(
    title="Batle Pass",
    description="BetaTest"
  )
  for item in data["int"]:
    embedVar.add_field(
      name=data["quests"][str(item+1)]["name"],
      value=f"""
      {data["quests"][str(item+1)]["description"]}
      Создано {data["quests"][str(item+1)]["createdTime"]}
      """
    )
    item = item + 1
  
  await ctx.send(embed=embedVar)

keep_alive()
bot.run(TOKEN)

pass.json
{
  "int": 3,
  "quests": {
    "1": {
      "title": "\u041f\u0435\u0440\u0432\u043e\u0435 \u0437\u0430\u0434\u0430\u043d\u0438\u0435",
      "description": "\u041d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u0438\u0432\u0435\u0442",
      "reward": "\u041d\u0435\u0442\u0443",
      "cteatedTime": "00.00.0000"
    },
    "2": {
      "title": "title",
      "description": "description",
      "reward": "reward",
      "cteatedTime": "13/04/22"
    },
    "3": {
      "title": "title",
      "description": "description",
      "reward": "reward",
      "cteatedTime": "13/04/22"
    }
  }
}

Ошибка
6258d1d278fd8311665354.png
  • Вопрос задан
  • 139 просмотров
Решения вопроса 1
@MaxKra1985
разработчик java, python
Потому что цикл построен неправильно. В data["int"] у тебя не список, а число.

Правильно в таком случае вот так:
for i = 1 to data["int"]:
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы