Задать вопрос
@Showlxx

Ошибка:NameError: name 'message' is not defined, что делать?

from pyowm import OWM
import telebot
# Импортируем бота тг
# А вот и сам бот, с токеном, взятый у BotFather.
owm = OWM('Токен')
bot = telebot.TeleBot("Токен", parse_mode=None)

@bot.message_handler(content_types=["text"]) # хз для чего сделано вна2ре, но я так понял, что для ответа на любые сообщения
def send_echo(message):

observation = mgr.weather_at_place(message.text)
w = observation.weather
temp= w.temperature('celsius')["temp"]

answer = "В городе " + message.text + " сейчас " + w.detailed_status + "\n"
answer += "Температура сейчас в районе " + str(temp) + "\n\n"

if temp < 0:
answer += "Рекомендую одеться потеплее!"

bot.send_message(message.chat.id, answer)

bot.polling( none_stop = True)

Что не так, почему ошбика то?
bot.send_message(message.chat.id, answer)
NameError: name 'message' is not defined
  • Вопрос задан
  • 283 просмотра
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
MinTnt
@MinTnt
Скорее всего bot.send_message находится вне функции send_echo, поэтому метод не знает, что находится под именем message
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы