@EbaRG

Ошибка когда написал код в python, что делать?

Код:

from pyowm import OWM
import telebot


owm = OWM('Ключ')
mgr = owm.weather_manager()
bot = telebot.TeleBot("Ключ")


@bot.message_handler(content_types=['text'])
def send_echo(message):
    
    observation = mgr.weather_at_place(place)
w = "observation.weather()"
temp = w.temperature('celsius') ["temp"]
    
answer = "В городе " + place + " сейчас " + w.detailed_status() + "\n"
answer += "Температура сейчас в районе" + str(temp) + "\n\n"
if temp < 10:
	answer +=" Сейчас очень холодно, одевайся тепло."
elif temp < 20:
	answer +=" Сейчас холодно, одевайся потеплее."
else:
    answer +="Температура норм, одевай что угодно."

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

bot.polling( none_stop = True )


Ошибка:

D:\Python>python test2.py
Traceback (most recent call last):
  File "D:\Python\test2.py", line 15, in <module>
    temp = w.temperature('celsius') ["temp"]
AttributeError: 'str' object has no attribute 'temperature'


Понимаю, что ошибка в str, но не знаю, как исправить, кто знает, помогите и желательно поподробнее, только начал изучать пайтон, по этому видосу (https://www.youtube.com/watch?v=fp5-XQFr_nk)
Тайм-код - 54:43

(телеграмм бот с погодой)
  • Вопрос задан
  • 131 просмотр
Решения вопроса 2
DMGarikk
@DMGarikk
Lead Software Developer
w = "observation.weather()"

кавычки лишние

но старайтесь хоть понимать что вы копипастите, это не просто "какието слова"
Ответ написан
Комментировать
HemulGM
@HemulGM Куратор тега Python
Delphi Developer, сис. админ
Потому что w = "observation.weather()" <- это СТРОКА. Текст ошибки не видишь? Или переводчиком не научили пользоваться?
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 03:52
1000 руб./за проект
19 апр. 2024, в 03:01
1000 руб./за проект
18 апр. 2024, в 21:56
2000 руб./за проект