@CatRoys

Как проверить текст на reply_message?

Как можно проверить есть ли в сообщении "text"?
(Иногда, пользователь не присылает эту строчку и выходит ошибка)
Скрипт:
text = event.raw['object']['fwd_messages'][0]['text']

UPD:
Пересланное сообщение такого вида:
5ef15299960c9455012704.png
  • Вопрос задан
  • 75 просмотров
Решения вопроса 1
werevolff
@werevolff
# Проверяет в keys(). Вызовет ошибку, если event.raw['object']['fwd_messages'][0] - не словарь
if 'text' in event.raw['object']['fwd_messages'][0].keys():
    pass

# Аналогичная проверка, но, допустим, если event.raw['object']['fwd_messages'][0] - это строка или iterable, не вызовет ошибки, а попытается найти 'text'
if 'text' in event.raw['object']['fwd_messages'][0]:
    pass

# Пытается получить из  event.raw['object']['fwd_messages'][0] value по ключу "text". Если такого ключа нет в словаре, вернёт default (None)
text = event.raw['object']['fwd_messages'][0].get("text", None)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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