@benhaista

Что с кодом, выдаёт: TypeError: string indices must be integers что тут не так?

SHOPS = ({
'title':'Миарабад',
'lonm': 41.294277,
'latm': 69.270745,
'adress':'город Ташкент, Улица Миарабадская, дом 35'
})

distance = []
for m in const.SHOPS:
result = Nominatim((m['latm'], m['lonm']), (lat, lon)).kilometers #на этой строке ошибка где-то
distance.append(result)
index = distance.index(min(distance))

bot.send_message(message.chat.id, 'Ближайший к вам магазин')
bot.send_venue(message.chat.id, const.SHOPS[index]['latm'], const.SHOPS[index],['lonm'], const.SHOPS[index],['title'], const.SHOPS[index],['adress'])
  • Вопрос задан
  • 99 просмотров
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
В вашем коде переменная цикла m содержит строки - title, lonm, latm и adress. Вы итерируете по ключам словаря. А у строки ключей нет, нельзя выполнить 'title'['latm']
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
11 мая 2024, в 00:19
1000 руб./за проект
10 мая 2024, в 23:51
30000 руб./за проект
10 мая 2024, в 23:33
2500 руб./за проект